pdf流的奇怪编码



我正在研究pdf的内部结构,所以我在libreoffice writer中创建了一个文件,只写字符串"Hello world"并导出为pdf格式。所以我用:pdftk hello_world.pdf output hello_world_unc.pdf uncompress解压它,用文本编辑器打开它。

分析流,我得到一些奇怪的东西,像这样:[<01>5<02>-6<03>2<03>2<040506>-2 <040703>2<08>]TJ应该代表"Hello world"作为十六进制字符串(在尖括号中)的数组,以及指定间距的整数。

我声明这个文件只包含这个字符串,它是为教育目的而创建的。

问题是它们看起来不像十六进制字符,因为它们应该是。也就是说,当然是"H"不是用01表示的。我期待的是这样的内容:(Hello world) Tj.

有人能帮我理解吗?提前感谢

这些数字只是字符映射的索引。

深入研究未压缩的PDF。你会发现一些像这样的行:

<01> <0048>
<02> <0065>
<03> <006C>
<04> <006F>
<05> <0020>
<06> <0077>
<07> <0072>
<08> <0064>
  • 字距正在使用中,因此使用TJ数组而不是TJ字符串。这些数字是以1/1000 em(从内存)为单位测量的字符;

  • & lt;比;字符串是PDF十六进制字符串,而不是普通的PDF字符串;

  • 在字体中查找/ToUnicode映射。如果存在,它将帮助您完成从PDF代码点到unicode代码点序列的映射。

相关内容

  • 没有找到相关文章

最新更新