对于某个PDF文件,如果我使用page.getMediaBox().getWidth()
和page.getMediaBox().getHeight()
通过PDFBox获取PDF文件页面的宽度和高度,如果显示的值与我使用{{ 1}}。可能是什么原因?我附上了PDFBoxDebugger
的屏幕截图。我正在使用PDFBox-2.0.9版本。我从PDFDebugger
和page.getMediaBox().getWidth()
获得的值分别是531.36597和647.99603,它们与page.getMediaBox().getHeight()
值不匹配。 (并且仅在PDF的第一页上显示,对于其他页面,它可以正常工作)
答案 0 :(得分:2)
正如蒂尔曼(Tilman)在评论中所述,期望值是
观察值
考虑到531.36597和647.99603
float
类型的准确性,与期望值足够好地对应。
我认为op会误解 MediaBox 数组的值。它们不包含宽度或高度作为显式值,而是盒子两个相对角的坐标。
MediaBox 值指定为具有 rectangle 类型,请参见。 ISO 32000-1表30 页面对象中的条目。并且 rectangle 被指定为
一个特定的数组对象,用于描述页面和各种对象的边框上的位置,并写成四个数字的数组,给出一对对角相对的角的坐标,
cf。 ISO 32000-1第4.40节矩形。
蒂尔曼(Tilman)也已经提到过,您可能应该查看 CropBox 。