我正在使用iText将图像输出到PDF文件。图像总是显得比他们想象的要大。根据该书(iText in Action),这是因为iText始终以72 dpi的分辨率显示图像,而不管图像的实际dpi属性如何。本书建议使用image.getDpiX()查找图像的dpi,然后使用image.scalePercent(72/actualDpi * 100)正确显示图像。到目前为止,我所有图像的getDpiX()属性已经返回0(我已经尝试了2个gif和1个jpg)。是否有另一种方法来计算出实际的DPI,以便我的图像正确缩放?Java图像缩放
com.lowagie.text.Image graphic = com.lowagie.text.Image.getInstance(imgPath);
float actualDpi = graphic.getDpiX();
if (actualDpi > 0)
//Never gets here
graphic.scalePercent(72f/actualDpi * 100);