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 にレンダリングするには、グラフィック デバイスの解像度を 1 インチあたりのドット数 (DPI) で指定する必要があります。

image = page.renderToImage(72, 72)

ドキュメントの自然なサイズはポイント (つまり、1 インチあたり 72) で提供され、イメージ レンダラーは 1 インチあたりのドット数を必要とするため、ドキュメントの自然なサイズは解像度が 72 DPI の場合であると想定できますか? それとも、ドットとポイントは 2 つの異なる尺度ですか? 私が間違っている場合、これに対する解決策は何ですか?

4

1 に答える 1

6

PDF ファイルのポイントは物理的な単位であり、定規で測定できます。画像内のドット (ピクセル) は仮想単位であり、それらの間の接続は解像度係数によって行われます。コンテンツをベクター空間からラスター空間に移動する場合、ポイントとピクセルの関係 (変換に使用される解像度) を決定します。100% の意味を決定するのはアプリケーション次第です。

ほとんどのアプリケーションは、画面の DPI を 100% スケールの基準として使用します。Windows では、これは通常 96DPI を意味し、PDF ファイルの 1 インチが画面上の 96 ピクセルで表されます。Adobe Reader では、独自の解像度を 100% スケールで使用するように設定できます。デフォルトでは 110DPI です。

于 2012-05-15T15:03:27.827 に答える