未分類

C# 印刷設定を行う

準備

(なし)

デザイン

1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にプリントドキュメント (printDocument1) を配置します。

サンプルコード (C#)

// 名前空間の追加
using System.Drawing.Printing;

// コード
private void button1_Click(object sender, EventArgs e)
{
  // プリンター
  printDocument1.PrinterSettings.PrinterName = "Microsoft XPS Document Writer";

  //用紙サイズ
  foreach (PaperSize item in printDocument1.PrinterSettings.PaperSizes)
  {
    if (item.PaperName.IndexOf("A3") > -1)
    {
      printDocument1.DefaultPageSettings.PaperSize = item;
    }
  }

  // 印刷実行
  printDocument1.Print(); 
}

private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
  Font font = new Font("メイリオ", 24, FontStyle.Regular);
  e.Graphics.DrawString("Hello, World!", font, Brushes.Black, 0, 0);
}

解説

プリンターと用紙サイズを指定して印刷を実行しています。印刷テストをする場合、実際に印刷すると、コスト的に無駄ですので、XPS ファイルに保存する方法を採用しています。この場合、実際にプリンター用紙のサイズが変更されたかを確認するには、以下の手順を実行します。
1. XPS ファイルを開きます。
2. [ファイル] - [印刷] をクリックします。
3. Microsoft XPS Document Writer を選択して、[詳細設定] をクリックします。
4. 右下の [詳細設定] をクリックします。ここで用紙のサイズの確認ができます。

結果

動作確認環境

Visual Studio 2015 Professional (C# 6.0)

-未分類