从PDFBOX src下载PrintImageLocations.java文件。以下是源代码的一部分,只有最后一行是我加的,它将输出dpi:
float imageXScale = ctmNew.getXScale();
float imageYScale = ctmNew.getYScale();
System.out.println("position = " + ctmNew.getXPosition() + ", " + ctmNew.getYPosition());
System.out.println("size = " + imageWidth + "px, " + imageHeight + "px");
System.out.println("size = " + imageXScale + "pu, " + imageYScale + "pu");
imageXScale /= 72;
imageYScale /= 72;
System.out.println("size = " + imageXScale + "in, " + imageYScale + "in");
imageXScale *= 25.4;
imageYScale *= 25.4;
System.out.println("size = " + imageXScale + "mm, " + imageYScale + "mm");
System.out.printf("dpi = %.0f dpi (X), %.0f dpi (Y) %n", image.getWidth() * 72 / ctmNew.getXScale(), image.getHeight() * 72 / ctmNew.getYScale());
这是一个样例输出:
找到图片 [X0]
位置 = 0.0, 0.0
尺寸 = 2544像素, 3523像素 <---- 像素
尺寸 = 610.56页元, 845.52页元 <---- "页元",1页元 = 1/72英寸
尺寸 = 8.48英寸, 11.743334英寸
尺寸 = 215.39198毫米, 298.28067毫米
dpi = 300 dpi (X), 300 dpi (Y)