CGPDFScanner - \x15 字符扫描时

CGPDFScanner - \x15 character while scanning

我正在尝试提取 pdf 中第 5 页的文本。
pdf 的字体 YLJAAA+CMSY10 没有映射 (CMap) 甚至编码(默认编码或 /Differences)。
提取文本时,在字符串"tetex package" CGPDFScanner returns 后多次遇到“\x15”字符。
当遇到这个字符时,当前字体是上面提到的字体,它没有从pdf字符串中提取文本。 这个 \x15 字符是什么?

谢谢。

我发现了 2 次(不是 "many"):

[ (5) ] TJ

这是八进制数 – 这是\x15十六进制数。

PDF 中 "YLJAA+CMSY10" 的字体定义没有特殊编码,因此它具有 "CMSY" 的 默认 编码("Computer Modern Symbol" ):

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 (十进制)是 named 'GREATER-THAN OR EQUAL' 并且 looks 就像它一样嗯。