3

我知道这个问题之前已经被问过几次了,但我只是想澄清一下。我有一个 pdf 阅读器,我想给它添加一个高亮功能。我已经可以通过解析TjandTJ运算符来提取文本。现在我想在pdf中找到文本的位置。

起初我试图找到这些Tm值。我能够提取 的 (x,y) Tm,但它似乎不正确。所以我决定去Tdand TD。问题是 pdf 似乎不包含任何TdTD值,因为从未调用过操作符回调。(我在回调中添加了一个日志,只是为了查看它是否被调用,但它从未出现过。)

所以我的问题是,如果我想在 pdf 中找到文本的位置,我应该查看哪个?Tm价值观还是Td/TD价值观?还是两者兼而有之?

附加问题:

Tm 有六个参数:a, b, c, d, ef。我知道eandf代表txand ty,但是其他四个参数代表什么?

4

1 回答 1

3

您需要处理所有文本运算符,还需要知道其中一些是如何工作的。例如,垂直书写字体将应用 W2 条目以在绘制字形之前将水平字形原点移动到垂直字形原点。

除了 Tm、TD 和 Td 之外,您还需要处理 T*,除了 TJ 和 Tj 之外,您还需要处理 ' 和 " 如果您想知道文本在单个“显示”操作中是如何定位的,那么您还需要考虑Tc、Tw、Tz、TL 和 Ts 的值。

您可能还需要处理当前转换矩阵。

于 2012-06-25T12:26:27.617 回答