Files
nothoughts/node_modules/pixi.js/lib/scene/text-html/utils/extractFontFamilies.js
2025-08-04 18:57:35 +02:00

38 lines
970 B
JavaScript

'use strict';
"use strict";
function extractFontFamilies(text, style) {
const fontFamily = style.fontFamily;
const fontFamilies = [];
const dedupe = {};
const regex = /font-family:([^;"\s]+)/g;
const matches = text.match(regex);
function addFontFamily(fontFamily2) {
if (!dedupe[fontFamily2]) {
fontFamilies.push(fontFamily2);
dedupe[fontFamily2] = true;
}
}
if (Array.isArray(fontFamily)) {
for (let i = 0; i < fontFamily.length; i++) {
addFontFamily(fontFamily[i]);
}
} else {
addFontFamily(fontFamily);
}
if (matches) {
matches.forEach((match) => {
const fontFamily2 = match.split(":")[1].trim();
addFontFamily(fontFamily2);
});
}
for (const i in style.tagStyles) {
const fontFamily2 = style.tagStyles[i].fontFamily;
addFontFamily(fontFamily2);
}
return fontFamilies;
}
exports.extractFontFamilies = extractFontFamilies;
//# sourceMappingURL=extractFontFamilies.js.map