前回の質問以来、C# でフォームを印刷する作業をさらに行った結果、次のコードが得られました。
public void printToolStripMenuItem_Click(object sender, EventArgs e)
{
Rectangle bounds = this.Bounds;
Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height);
Graphics g = Graphics.FromImage(bitmap);
g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size);
PrintDocument doc = new PrintDocument();
doc.PrintPage += this.Doc_PrintPage;
PrintDialog dlgSettings = new PrintDialog();
dlgSettings.Document = doc;
if (dlgSettings.ShowDialog() == DialogResult.OK)
{
doc.Print();
}
}
private void Doc_PrintPage(object sender, PrintPageEventArgs e)
{
float x = e.MarginBounds.Left;
float y = e.MarginBounds.Top;
e.Graphics.DrawImage(bitmap);
}
printToolStripMenuItem_Click は印刷ボタンです。ニーズに合わせてコードを編集する前に印刷ダイアログを見たので、私は近くにいることを知っています。現在、「e.Graphics.DrawImage(bitmap);」に「bitmap」というエラーが表示されています。文脈上存在しません。
この画像を印刷するには、何を変更できますか? 印刷ドキュメントを作成する前に、画面のイメージを印刷しようとしています。私は時々怠け者です:P
注: これは、印刷する必要があるフォームである form2.cs ファイル内のすべてのコードです。
ありがとう :)