我有这个要求合并两个pdf文档并在结果pdf文档中设置指定的边距.有没有办法从PdfReader或PdfImportedPage获取当前页边距?我想通过这些测量来决定是否转换或缩放输入页面.
就PDF格式而言,确实没有这样的事情.你有一堆可能会或可能不会在给定页面上定义的边界框.唯一需要的框是媒体框:
媒体框:'页面大小'.应打印此PDF页面的介质大小.
裁剪框:完成页面的大小.在后处理步骤中将切断介质和裁剪之间的任何差异.默认为媒体框.
艺术盒:包含"页面有意义的内容".默认为裁剪框.
修剪盒和出血盒:类似于裁剪盒,但除非你恰好是一个关注"额定速度"之类的专业印刷厂,否则模糊不同.
除非你对Art Box感到幸运(我会感到震惊),你唯一真正的选择是解析每个页面的内容(使用com.itextpdf.text.pdf.parser.*中的类)和DEDUCE利润自己.这可能容易出错.
OTOH,如果最初生成PDF的应用程序可能已将其布局信息嵌入到PDF中,在这种情况下,您需要了解它们是如何在逐个应用程序(甚至逐个版本)的基础上执行的.