尝试从解析的PDF流中计算文本对象的(tx,ty)位置时,我遇到了真正的困难。
我有以下流代码:
BT
0.75 0.68 0.67 0.902 k
/GS0 gs
/TT0 1 Tf
-0.018 Tc 7.56 0 0 7.56 77.1871 528.3107 Tm
(Text line 1)Tj
-0.019 Tc 0 -1.917 TD
(Text line 2)Tj
-0.017 Tc 0 -2.917 TD
(HEADER)Tj
ET
q
43.167 489.881 7.56 7.56 re
W n
BT
/TT0 1 Tf
0 Tc 7.56 0 0 7.56 43.1671 491.7707 Tm
(INDEX)Tj
ET
当我在某些PDF阅读器中打开此PDF时,HEADER和INDEX对象完全相邻,因为它们位于同一行。
然而,当从之前的Tm(528,3107)计算HEADER的ty值时,我得到491,7657,比INDEX的ty(491,7707)低0,0050。在文件的其他部分,更多的文本段落具有更大的差异。
基本上我所做的是将Tm的比例因子(7,56)乘以TD的增量。很明显,我做错了,但仍然 - 网上有像我这样的假人的文档......
所以我的问题是 - 如何让其他PDF阅读器将HEADER和INDEX ty值解释为相同,所以它们以相同的ty打印出来?