WYSIWYG の表示と出力
ほとんどのアプリケーションは、WYSIWYG (表示される内容) 出力をサポートしようとします。 つまり、アプリケーション ウィンドウで 10 ポイントの Helvetica 太字フォントで描画されたテキストは、印刷時に同様の外観になります。 実際の WYSIWYG 出力の取得は事実上不可能であり、ほとんどの場合は望ましくありません。 これは一部、ビデオとプリンターのテクノロジの違いによるものです。一般的に、画面上のピクセルは、一般的なレーザー プリンターのドットよりも大きくなります。 表示距離も異なります。通常、コンピューター ユーザーは画面から約 2 フィート離れていますが、読者の目は通常、印刷されたページから 1 フィート以下です。
画面と印刷ページの間の読みやすさの違いを補うために、システムでは、常にピクセル単位で指定される論理インチと呼ばれる単位がサポートされます。 ビデオディスプレイの場合、論理インチは、長い表示距離と(一般的に)粗い解像度を補正するために、物理的なインチよりも常に大きくなります。 プリンターの場合、論理インチは常に物理インチと等しくなります。
テキストを描画するときに WYSIWYG 効果を取得するには、個々の文字が同じように見える、デバイスに依存しないページ レイアウトという 2 つの関連する問題が関係しています。 最初の問題に対処するために、アプリケーションは CreateFont 関数を使用して、理想的な (または論理) フォントのフォント名とサイズを指定し、 SelectObject 関数を呼び出してディスプレイまたはプリンターのデバイス コンテキストを識別できます。 アプリケーションが SelectObject を 呼び出すと、指定された論理フォントに最も近い物理フォントが選択されます。 システムは、表示フォントを選択すると、実際のサイズよりも大きい物理フォントを選択します。 これは、ディスプレイの論理インチが大きいことが原因で発生します。 ただし、ユーザーの観点からは、正しい高さに非常に近いように見えます。 システムは、プリンターのフォントを選択すると、実際に要求されたサイズである物理フォントを選択します。 フォントとテキスト出力の詳細については、「 フォントとテキスト」を参照してください。
デバイスに依存しないページ レイアウトの 2 つ目の問題は、TrueType メトリックを使用することで対処できます。 これは、16 ビット バージョンの Windows との互換性を維持する場合でも当てはまります。 詳細については、「 ポータブル TrueType メトリックの使用」を参照してください。
ビットマップ グラフィックを描画するときに WYSIWYG 効果を取得するために、アプリケーションは画面と印刷ページの幅と高さを論理インチ単位で取得できます。 これらの値を使用して、アプリケーションは、水平方向と垂直方向のスケーリング 要因を作成して、ビットマップイメージがプリンターに描画されるときに、その比率を維持できます。 ビットマップとビットマップ出力の詳細については、「 ビットマップ」を参照してください。