我正在尝试在pdf中提取第5页的文字。
pdf的字体为YLJAAA + CMSY10,没有映射(CMap)或甚至编码(默认编码或/差异)。
在提取文本时,在字符串“tetex package”CGPDFScanner之后返回多次遇到的“\ x15”字符。
当遇到这个字符时,当前字体是上面提到的字体,它没有从pdf字符串中提取文本。
这个\ x15字符是什么?
感谢。
答案 0 :(得分:2)
我发现了2次(不是"很多"):
[ (\025) ] TJ
这是 octal 中的数字 - 这是十六进制的\x15
数字。
" YLJAA + CMSY10"的字体定义在PDF中没有特殊的编码,因此它具有" CMSY"的默认编码。 ("计算机现代符号"):
114 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont 210 0 R % -> "/YLJAAA+CMSY10"
/FirstChar 0
/FontDescriptor 211 0 R
/LastChar 127
/Widths 204 0 R
>>
211 0 obj
<<
/Ascent 750
/CapHeight 683
/CharSet (/bullet/greaterequal/arrowright/arrowdblright/element/negationslash/backslash/radical)
/Descent 0
/Flags 4
/FontBBox [ -29 -960 1116 775 ]
/FontFile 205 0 R
/FontName 210 0 R % -> '/YLJAAA+CMSY10'
/ItalicAngle -14
/StemV 85
/XHeight 430
>>
endobj
本身,这仍然没有明确说明:PDF制作人可以随意重新排序字形和编码,只要它与嵌入字体相同即可。假设字体集未重新排序,则检查a random list of CMxx encodings表示字符代码0x1F
可能大于或等于(Unicode U + 2265)。
Acrobat同意;检查PDF中的字体显示字符代码21
(十进制)命名为&#39; GREATER-THAN OR EQUAL&#39;并且看起来也像一样。