在现有 pdf 中增加 table 行高

Increase table row height in existing pdf

我想修改现有 pdf 文档中 table 行的高度。我希望 table 下面的内容在行高增加时自动下移。我试过使用 hummuspdf,但似乎没有明确的方法可以做到这一点。有没有办法以编程方式完成我的要求?

I would like to modify the height of a table row in an existing PDF document.

你不会喜欢这个问题的答案:这在技术上是可行的,但比你想象的要难得多。

这里有 2 个主要障碍:1) PDF 并非设计为 editable 格式。 2) PDF文档没有table.

的概念

对 2) 进行扩展,PDF 本质上包含一系列引用绝对位置的绘图和文本说明。一个table无非是一组文字指令和画线指令,恰好在视觉上代表了一个table。

这些指令甚至不必在文件中相互靠近。完全有可能在文件的顶部找到边框的线条笔画,并且除了一条文本指令外,所有的文本指令都在文件末尾附近,最后一条指令在中间某处懒散。

除非在创建过程中明确添加了结构(请参阅标记的 PDF),否则无法保证您以编程方式识别在视觉上类似于 table 的指令集。

现在,假设您很幸运并且已经做到了这一点,现在您想要增加 table 高度,并可能让其余内容适应新的高度。现在 1) 开始发挥作用。因为 PDF 说明引用绝对坐标,所以您必须重新计算所有可能受影响的内容:构成边框的线条、table 内的文本、table 下方的所有内容等。

请记住,文档中 table 下方的所有内容不一定都在文件中 table 说明下方。

如果你真的成功了,我想很多人会对你的解决方案很感兴趣。

tl;博士:

常用的 PDF 库中没有这个看似微不足道的功能是有原因的,因为 PDF 格式使它成为一个难题。