印刷
Microsoft Windows では、デバイスに依存しないディスプレイが実装されています。 このことは、MFC では、ビュー クラスの OnDraw
メンバー関数内の同じ描画呼び出しが、ディスプレイ上での描画とプリンターなどの他のデバイスでの描画を担当することを意味します。 印刷プレビューの場合、ターゲット デバイスはディスプレイへのシミュレートされたプリンター出力です。
印刷におけるプログラマの役割とフレームワークの役割
ビュー クラスには、次の役割があります。
ドキュメントのページ数をフレームワークに通知します。
指定されたページの印刷を求められた場合は、ドキュメントのその部分を描画します。
印刷に必要なフォントや他のグラフィックス デバイス インターフェイス (GDI) リソースの割り当てと割り当て解除を行います。
必要に応じて、特定のページを印刷する前に、プリンター モードを変更するために必要なエスケープ コードを送信します。たとえば、ページごとに印刷の向きを変更します。
フレームワークには、次の役割があります。
[印刷] ダイアログ ボックスを表示します。
プリンターの CDC オブジェクトを作成します。
CDC
オブジェクトの StartPage メンバー関数を繰り返し呼び出し、印刷するページをビュー クラスに通知し、CDC
オブジェクトの EndPage メンバー関数を呼び出します。ビュー内のオーバーライド可能な関数を適切なときに呼び出します。
以下の記事では、フレームワークで印刷と印刷のプレビューがどのようにサポートされているのかについて説明します。