fix: 增强DOCX字体实际使用门禁
This commit is contained in:
@@ -172,6 +172,11 @@ function inspectDocx(content) {
|
||||
const fontNames = [
|
||||
...fontTableXml.matchAll(/<w:font\s+w:name="([^"]+)"/gu)
|
||||
].map((match) => match[1]);
|
||||
const embeddedFontNames = [
|
||||
...fontTableXml.matchAll(/<w:font\s+w:name="([^"]+)"[\s\S]*?<\/w:font>/gu)
|
||||
].flatMap((match) => /<w:embed(?:Regular|Bold|Italic|BoldItalic)\b/u.test(match[0])
|
||||
? [match[1]]
|
||||
: []);
|
||||
const paragraphs = [
|
||||
...documentXml.matchAll(/<w:p(?:\s|>)[\s\S]*?<\/w:p>/gu)
|
||||
].map((match) => match[0]);
|
||||
@@ -205,6 +210,9 @@ function inspectDocx(content) {
|
||||
fontNames: [...new Set(fontNames)].sort((first, second) =>
|
||||
first.localeCompare(second, "en")
|
||||
),
|
||||
embeddedFontNames: [...new Set(embeddedFontNames)].sort((first, second) =>
|
||||
first.localeCompare(second, "en")
|
||||
),
|
||||
optionalFontPackApplied: fontTableXml.includes("MdTP Serif SC"),
|
||||
hasAltChunk: /<w:altChunk(?:\s|>)/u.test(documentXml),
|
||||
internalMarkerCount:
|
||||
@@ -448,12 +456,6 @@ try {
|
||||
const enhancedThemes = results.filter(
|
||||
(result) => result.docx.inspection.optionalFontPackApplied
|
||||
);
|
||||
if (themes.some((theme) => theme.id === "gov-red-standard")) {
|
||||
assert(
|
||||
enhancedThemes.some((result) => result.id === "gov-red-standard"),
|
||||
"有效字体包未增强 gov-red-standard"
|
||||
);
|
||||
}
|
||||
for (const result of results) {
|
||||
assert(
|
||||
result.pdf.diagnostics.pageCount > 0,
|
||||
|
||||
Reference in New Issue
Block a user