4

我对如何以真实比例显示 PDF 文档感到困惑,即比例 = 100%。

注意:我正在使用python-poppler-qt4

Poppler-qt4 提供了一种方法来获取 PDF 的真实大小(以磅为单位) :

document = Poppler.Document.load('mypdf.pdf')
page = document.page(0)
size = page.pageSize() # returns a QSize object

然后要将页面呈现为 QImage,应提供图形设备的分辨率,以每英寸点数 (DPI) 为单位:

image = page.renderToImage(72, 72)

现在,由于文档的自然尺寸以点为单位(即每英寸 72)提供,并且图像渲染器需要每英寸点数,我可以假设文档的自然尺寸是当其分辨率为 72 DPI 时?还是点和点是两种不同的度量?如果我错了,那么解决这个问题的方法是什么?

4

1 回答 1

6

PDF 文件中的点是物理单位,您可以用尺子测量它们。图像中的点(像素)是虚拟单位,它们之间的联系是通过分辨率因子完成的。当您将内容从矢量空间移动到光栅空间时,您决定点和像素之间的关系(用于转换的分辨率),由您的应用程序决定 100% 的含义。

大多数应用程序使用屏幕的 DPI 作为 100% 比例的参考。在 Windows 上,这通常意味着 96DPI,即 PDF 文件的一英寸在屏幕上的 96 像素上表示。Adobe Reader 允许您设置自己的分辨率以用于 100% 比例,默认情况下为 110DPI。

于 2012-05-15T15:03:27.827 回答