PDFBox中PDF文件的不同高度和宽度属性

时间:2018-08-27 05:52:31

标签: java pdfbox

对于某个PDF文件,如果我使用page.getMediaBox().getWidth()page.getMediaBox().getHeight()通过PDFBox获取PDF文件页面的宽度和高度,如果显示的值与我使用{{ 1}}。可能是什么原因?我附上了PDFBoxDebugger的屏幕截图。我正在使用PDFBox-2.0.9版本。我从PDFDebuggerpage.getMediaBox().getWidth()获得的值分别是531.36597和647.99603,它们与page.getMediaBox().getHeight()值不匹配。 (并且仅在PDF的第一页上显示,对于其他页面,它可以正常工作)

MediaBox shows different values than the values using the MediaBox() method

1 个答案:

答案 0 :(得分:2)

正如蒂尔曼(Tilman)在评论中所述,期望值是

  • 宽度为1282.2-750.834 = 531.366
  • 高度849.593-201.597 = 647.996 (校正后的值)。

观察值

  

531.36597和647.99603

考虑到float类型的准确性,

与期望值足够好地对应。


我认为op会误解 MediaBox 数组的值。它们不包含宽度或高度作为显式值,而是盒子两个相对角的坐标

MediaBox 值指定为具有 rectangle 类型,请参见。 ISO 32000-1表30 页面对象中的条目。并且 rectangle 被指定为

  

一个特定的数组对象,用于描述页面和各种对象的边框上的位置,并写成四个数字的数组,给出一对对角相对的角的坐标,

cf。 ISO 32000-1第4.40节矩形


蒂尔曼(Tilman)也已经提到过,您可能应该查看 CropBox