|
846 | 846 | <rule object="PDCIDFont">
|
847 | 847 | <id specification="ISO_19005_2" clause="6.2.11.3.2" testNumber="1"/>
|
848 | 848 | <description>ISO 32000-1:2008, 9.7.4, Table 117 requires that all embedded Type 2 CIDFonts in the CIDFont dictionary shall contain a CIDToGIDMap entry that shall be a stream mapping from CIDs to glyph indices or the name Identity, as described in ISO 32000-1:2008, 9.7.4, Table 117</description>
|
849 |
| - <test>Subtype != "CIDFontType2" || CIDToGIDMap != null || fontFile_size == 0</test> |
| 849 | + <test>Subtype != "CIDFontType2" || CIDToGIDMap != null || containsFontFile == false</test> |
850 | 850 | <error>
|
851 | 851 | <message>A Type 2 CIDFont dictionary has missing or invalid CIDToGIDMap entry</message>
|
852 | 852 | <arguments/>
|
|
858 | 858 | <rule object="PDCMap">
|
859 | 859 | <id specification="ISO_19005_2" clause="6.2.11.3.3" testNumber="1"/>
|
860 | 860 | <description>All CMaps used within a PDF/A-2 file, except those listed in ISO 32000-1:2008, 9.7.5.2, Table 118, shall be embedded in that file as described in ISO 32000-1:2008, 9.7.5</description>
|
861 |
| - <test>CMapName == "Identity-H" || CMapName == "Identity-V" || CMapName == "GB-EUC-H" || CMapName == "GB-EUC-V" || CMapName == "GBpc-EUC-H" || CMapName == "GBpc-EUC-V" || CMapName == "GBK-EUC-H" || CMapName == "GBK-EUC-V" || CMapName == "GBKp-EUC-H" || CMapName == "GBKp-EUC-V" || CMapName == "GBK2K-H" || CMapName == "GBK2K-V" || CMapName == "UniGB-UCS2-H" || CMapName == "UniGB-UCS2-V" || CMapName == "UniGB-UFT16-H" || CMapName == "UniGB-UFT16-V" || CMapName == "B5pc-H" || CMapName == "B5pc-V" || CMapName == "HKscs-B5-H" || CMapName == "HKscs-B5-V" || CMapName == "ETen-B5-H" || CMapName == "ETen-B5-V" || CMapName == "ETenms-B5-H" || CMapName == "ETenms-B5-V" || CMapName == "CNS-EUC-H" || CMapName == "CNS-EUC-V" || CMapName == "UniCNS-UCS2-H" || CMapName == "UniCNS-UCS2-V" || CMapName == "UniCNS-UFT16-H" || CMapName == "UniCNS-UTF16-V" || CMapName == "83pv-RKSJ-H" || CMapName == "90ms-RKSJ-H" || CMapName == "90ms-RKSJ-V" || CMapName == "90msp-RKSJ-H" || CMapName == "90msp-RKSJ-V" || CMapName == "90pv-RKSJ-H" || CMapName == "Add-RKSJ-H" || CMapName == "Add-RKSJ-V" || CMapName == "EUC-H" || CMapName == "EUC-V" || CMapName == "Ext-RKSJ-H" || CMapName == "Ext-RKSJ-V" || CMapName == "H" || CMapName == "V" || CMapName == "UniJIS-UCS2-H" || CMapName == "UniJIS-UCS2-V" || CMapName == "UniJIS-UCS2-HW-H" || CMapName == "UniJIS-UCS2-HW-V" || CMapName == "UniJIS-UTF16-H" || CMapName == "UniJIS-UTF16-V" || CMapName == "KSC-EUC-H" || CMapName == "KSC-EUC-V" || CMapName == "KSCms-UHC-H" || CMapName == "KSCms-UHC-V" || CMapName == "KSCms-UHC-HW-H" || CMapName == "KSCms-UHC-HW-V" || CMapName == "KSCpc-EUC-H" || CMapName == "UniKS-UCS2-H" || CMapName == "UniKS-UCS2-V" || CMapName == "UniKS-UTF16-H" || CMapName == "UniKS-UTF16-V" || embeddedFile_size == 1</test> |
| 861 | + <test>CMapName == "Identity-H" || CMapName == "Identity-V" || CMapName == "GB-EUC-H" || CMapName == "GB-EUC-V" || CMapName == "GBpc-EUC-H" || CMapName == "GBpc-EUC-V" || CMapName == "GBK-EUC-H" || CMapName == "GBK-EUC-V" || CMapName == "GBKp-EUC-H" || CMapName == "GBKp-EUC-V" || CMapName == "GBK2K-H" || CMapName == "GBK2K-V" || CMapName == "UniGB-UCS2-H" || CMapName == "UniGB-UCS2-V" || CMapName == "UniGB-UFT16-H" || CMapName == "UniGB-UFT16-V" || CMapName == "B5pc-H" || CMapName == "B5pc-V" || CMapName == "HKscs-B5-H" || CMapName == "HKscs-B5-V" || CMapName == "ETen-B5-H" || CMapName == "ETen-B5-V" || CMapName == "ETenms-B5-H" || CMapName == "ETenms-B5-V" || CMapName == "CNS-EUC-H" || CMapName == "CNS-EUC-V" || CMapName == "UniCNS-UCS2-H" || CMapName == "UniCNS-UCS2-V" || CMapName == "UniCNS-UFT16-H" || CMapName == "UniCNS-UTF16-V" || CMapName == "83pv-RKSJ-H" || CMapName == "90ms-RKSJ-H" || CMapName == "90ms-RKSJ-V" || CMapName == "90msp-RKSJ-H" || CMapName == "90msp-RKSJ-V" || CMapName == "90pv-RKSJ-H" || CMapName == "Add-RKSJ-H" || CMapName == "Add-RKSJ-V" || CMapName == "EUC-H" || CMapName == "EUC-V" || CMapName == "Ext-RKSJ-H" || CMapName == "Ext-RKSJ-V" || CMapName == "H" || CMapName == "V" || CMapName == "UniJIS-UCS2-H" || CMapName == "UniJIS-UCS2-V" || CMapName == "UniJIS-UCS2-HW-H" || CMapName == "UniJIS-UCS2-HW-V" || CMapName == "UniJIS-UTF16-H" || CMapName == "UniJIS-UTF16-V" || CMapName == "KSC-EUC-H" || CMapName == "KSC-EUC-V" || CMapName == "KSCms-UHC-H" || CMapName == "KSCms-UHC-V" || CMapName == "KSCms-UHC-HW-H" || CMapName == "KSCms-UHC-HW-V" || CMapName == "KSCpc-EUC-H" || CMapName == "UniKS-UCS2-H" || CMapName == "UniKS-UCS2-V" || CMapName == "UniKS-UTF16-H" || CMapName == "UniKS-UTF16-V" || containsEmbeddedFile == true</test> |
862 | 862 | <error>
|
863 | 863 | <message>A non-standard CMap %1 is not embedded</message>
|
864 | 864 | <arguments>
|
|
899 | 899 | <rule object="PDFont">
|
900 | 900 | <id specification="ISO_19005_2" clause="6.2.11.4.1" testNumber="1"/>
|
901 | 901 | <description>The font programs for all fonts used for rendering within a conforming file shall be embedded within that file, as defined in ISO 32000-1:2008, 9.9</description>
|
902 |
| - <test>Subtype == "Type3" || Subtype == "Type0" || renderingMode == 3 || fontFile_size == 1</test> |
| 902 | + <test>Subtype == "Type3" || Subtype == "Type0" || renderingMode == 3 || containsFontFile == true</test> |
903 | 903 | <error>
|
904 | 904 | <message>The font program is not embedded</message>
|
905 | 905 | <arguments/>
|
|
923 | 923 | <rule object="PDType1Font">
|
924 | 924 | <id specification="ISO_19005_2" clause="6.2.11.4.2" testNumber="1"/>
|
925 | 925 | <description>If the FontDescriptor dictionary of an embedded Type 1 font contains a CharSet string, then it shall list the character names of all glyphs present in the font program, regardless of whether a glyph in the font is referenced or used by the PDF or not</description>
|
926 |
| - <test>fontFile_size == 0 || fontName.search(/[A-Z]{6}\+/) != 0 || CharSet == null || charSetListsAllGlyphs == true</test> |
| 926 | + <test>containsFontFile == false || fontName.search(/[A-Z]{6}\+/) != 0 || CharSet == null || charSetListsAllGlyphs == true</test> |
927 | 927 | <error>
|
928 | 928 | <message>A CharSet entry in the Descriptor dictionary of a Type1 font incorrectly lists glyphs present in the font program</message>
|
929 | 929 | <arguments/>
|
|
933 | 933 | <rule object="PDCIDFont">
|
934 | 934 | <id specification="ISO_19005_2" clause="6.2.11.4.2" testNumber="2"/>
|
935 | 935 | <description>If the FontDescriptor dictionary of an embedded CID font contains a CIDSet stream, then it shall identify all CIDs which are present in the font program, regardless of whether a CID in the font is referenced or used by the PDF or not</description>
|
936 |
| - <test>fontFile_size == 0 || fontName.search(/[A-Z]{6}\+/) != 0 || containsCIDSet == false || cidSetListsAllGlyphs == true</test> |
| 936 | + <test>containsFontFile == false || fontName.search(/[A-Z]{6}\+/) != 0 || containsCIDSet == false || cidSetListsAllGlyphs == true</test> |
937 | 937 | <error>
|
938 | 938 | <message>A CIDSet entry in the Font descriptor does not correctly identify all glyphs present in the embedded font subset</message>
|
939 | 939 | <arguments/>
|
|
1111 | 1111 | <rule object="PDAnnot">
|
1112 | 1112 | <id specification="ISO_19005_2" clause="6.3.3" testNumber="3"/>
|
1113 | 1113 | <description>If an annotation dictionary's Subtype key has a value of Widget and its FT key has a value of Btn, the value of the N key shall be an appearance subdictionary</description>
|
1114 |
| - <test>AP != "N" || Subtype != "Widget" || FT != "Btn" || (N_type == "Dict" && appearance_size > 0)</test> |
| 1114 | + <test>AP != "N" || Subtype != "Widget" || FT != "Btn" || (N_type == "Dict" && containsAppearances == true)</test> |
1115 | 1115 | <error>
|
1116 | 1116 | <message>An annotation dictionary's Subtype key has a value of Widget and its FT key has a value of Btn, but the value of the N key is %1 instead of appearance subdictionary</message>
|
1117 | 1117 | <arguments>
|
|
1277 | 1277 | <rule object="PDDocument">
|
1278 | 1278 | <id specification="ISO_19005_2" clause="6.6.2.1" testNumber="1"/>
|
1279 | 1279 | <description>The Catalog dictionary of a conforming file shall contain the Metadata key whose value is a metadata stream as defined in ISO 32000-1:2008, 14.3.2. The metadata stream dictionary shall contain entry Type with value /Metadata and entry Subtype with value /XML</description>
|
1280 |
| - <test>metadata_size == 1</test> |
| 1280 | + <test>containsMetadata == true</test> |
1281 | 1281 | <error>
|
1282 | 1282 | <message>The document catalog dictionary doesn't contain metadata key or metadata stream dictionary does not contain either entry Type with value /Metadata or entry Subtype with value /XML</message>
|
1283 | 1283 | <arguments/>
|
|
1608 | 1608 | <rule object="MainXMPPackage">
|
1609 | 1609 | <id specification="ISO_19005_2" clause="6.6.4" testNumber="1"/>
|
1610 | 1610 | <description>The PDF/A version and conformance level of a file shall be specified using the PDF/A Identification extension schema</description>
|
1611 |
| - <test>Identification_size == 1</test> |
| 1611 | + <test>containsPDFAIdentification == true</test> |
1612 | 1612 | <error>
|
1613 | 1613 | <message>The document metadata stream doesn't contains PDF/A Identification Schema</message>
|
1614 | 1614 | <arguments/>
|
|
1705 | 1705 | <rule object="PDDocument">
|
1706 | 1706 | <id specification="ISO_19005_2" clause="6.7.3.3" testNumber="1"/>
|
1707 | 1707 | <description>The logical structure of the conforming file shall be described by a structure hierarchy rooted in the StructTreeRoot entry of the document's Catalog dictionary, as described in ISO 32000-1:2008, 14.7</description>
|
1708 |
| - <test>StructTreeRoot_size == 1</test> |
| 1708 | + <test>containsStructTreeRoot == true</test> |
1709 | 1709 | <error>
|
1710 | 1710 | <message>StructTreeRoot entry is not present in the document catalog</message>
|
1711 | 1711 | <arguments/>
|
|
0 commit comments