PDFBox - 查找页面尺寸
如何使用PDFBox找到PDF页面的宽度和高度(以毫米为单位)?目前,我正在使用这个:
System.out.println(page.getMediaBox().getHeight());
System.out.println(page.getMediaBox().getWidth());
但结果是(不是毫米):
842.0
595.22
如何使用PDFBox找到PDF页面的宽度和高度(以毫米为单位)?目前,我正在使用这个:
System.out.println(page.getMediaBox().getHeight());
System.out.println(page.getMediaBox().getWidth());
但结果是(不是毫米):
842.0
595.22
PDF中的测量单位以点为单位,这是传统的图形行业测量单位。Adobe 使用以下定义:
1 pt = 1/72 inch
由于一英寸被定义为正好是25.4毫米(真的!),您可以使用公式从点转换为毫米
mm = pt*25.4 / 72
顺便说一句,您的值(松散地)转换为A4纸张尺寸为210 x 297 mm(“松散地”,原因有2个。首先:x 尺寸源自公制系统中的 1 平方米。积分基于英制系统(根据Adobe的使用情况);因此,点和毫米之间的所有转换都是近似值。第二:A4 的给定值(以 mm 为单位)也四舍五入。x 相对大小和绝对大小基于无理数。
在对象流中,度量单位可以缩放到其他对象。上述情况仅适用于顶级基础对象。
DTP 点中的坐标定义为:1 pt = 1/72 英寸 = 25.4/72 mm
你可以写一个这样的方法:
public float pt2mm(float pt) {
return pt * 25.4f / 72;
}