前提・実現したいこと
【前提】
データベースから読み込んだデータをC#のフォームに折れ線グラフとして表示している。(Y座標の高さは固定だが、X座標はデータ量によって異なる)
ピクチャボックスにビットマップ画像として表示。
その画像を印刷したいが、データが多くなった場合、複数ページに渡ってしまう。
【実現したい事】
PrintDocumentクラスのprintメソッドを使用して、1ページに収まらないビットマップ画像を、複数ページに分けて印刷したい。
試したこと
当初はForNextでデータのコレクションをループさせ、
1ページに収まる範囲を超えたら、そこまでのデータを印字
↓
次のページのループへ
↓
最後のページを印字
のような処理を実装したが、
画面表示して、そこから印刷する際に、もう一度上のような印刷用の処理を
実行する必要があり、時間がかかる為、画面に表示したビットマップを印刷できないかと検討しています。
また、上記の処理だと、部数を印刷するPrinterSettings.Copiesに値を設定しても、最後のページが複数枚印刷された為、PrintPageEventArgsオブジェクトのGraphicsをループの度に書き換えるのはまずいと思いました。
以上、お手数ですが、ご回答よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー