我对如何以真实比例显示PDF文档感到困惑,即比例= 100%。
注意:我正在使用python-poppler-qt4。
Poppler-qt4提供a method to get the true size of the PDF in points:
document = Poppler.Document.load('mypdf.pdf')
page = document.page(0)
size = page.pageSize() # returns a QSize object
然后to render the page into a QImage,应该以每英寸点数(DPI)提供图形设备的分辨率:
image = page.renderToImage(72, 72)
现在由于文档的自然尺寸以点(即每英寸72个)提供,并且图像渲染器需要每英寸点数,我可以假设文档的自然尺寸是在其分辨率为72 DPI时?或点和点是两个不同的措施?如果我错了,那么解决方案是什么?
答案 0 :(得分:5)
PDF文件中的点是物理单位,您可以使用标尺来测量它们。图像中的点(像素)是虚拟单元,它们之间的连接是通过分辨率因子完成的。当您将内容从矢量空间移动到栅格空间时,您可以确定点和像素之间的关系(用于转换的分辨率),由您的应用决定100%的含义。
大多数应用程序使用屏幕的DPI作为100%比例的参考。在Windows上,这通常意味着96DPI,距离您的PDF文件一英寸在屏幕上以96像素表示。 Adobe Reader允许您将自己的分辨率设置为100%缩放,默认情况下为110DPI。