C# で印刷時のコピー数を設定する方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

書類の複数コピーを印刷することは日常的なニーズです。オリジナルと複製が必要な請求書、一括印刷される出荷ラベル、または複数の部門に配布されるレポートなどがあります。 ループ内で Print() を呼び出してコピーごとに個別の印刷ジョブを作成するのではなく、コピー数を一度設定し、プリンタードライバーに単一のジョブ内で複写処理を行わせる方が正しいアプローチです。

IronPrintのPrintSettings.NumberOfCopiesプロパティは整数を受け取り、指定された部数を1回の操作でプリンターに送信します。 当社では、インストール、基本的な使用方法、非同期ワークフロー、組み合わせ設定について以下で説明します。

クイックスタート: コピー数の設定

  1. NuGet 経由で IronPrint をインストールします: Install-Package IronPrint
  2. ファイルに using IronPrint; を追加してください
  3. PrintSettings オブジェクトを作成する
  4. NumberOfCopies を希望の数値に設定してください
  5. ファイルパスを指定して設定を Printer.Print() に渡す
  1. IronPrint をNuGetパッケージマネージャでインストール

    PM > Install-Package IronPrint
  2. このコード スニペットをコピーして実行します。

    using IronPrint;
    
    // Print 3 copies of a PDF in one print job
    PrintSettings settings = new PrintSettings();
    settings.NumberOfCopies = 3;
    Printer.Print("invoice.pdf", settings);
  3. 実際の環境でテストするためにデプロイする

    今日プロジェクトで IronPrint を使い始めましょう無料トライアル

    arrow pointer

PrintSettings.NumberOfCopies NumberOfCopies 1 0 NumberOfCopies PrintSettings NumberOfCopies NumberOfCopies PrintSettings.NumberOfCopies

サイレント印刷のためのコピー数を設定する方法

サイレント印刷は、ダイアログを表示せずにドキュメントを直接プリンターに送信します。 コピー数を PrintSettings.NumberOfCopies で設定し、その設定を Printer.Print() に渡します:

:path=/static-assets/print/content-code-examples/how-to/set-number-of-copies/set-number-of-copies-silent-copies.cs
using IronPrint;

// Configure the print job for 5 copies
PrintSettings settings = new PrintSettings
{
    NumberOfCopies = 5
};

// Print the shipping label
Printer.Print("shipping-label.pdf", settings);
Imports IronPrint

' Configure the print job for 5 copies
Dim settings As New PrintSettings With {
    .NumberOfCopies = 5
}

' Print the shipping label
Printer.Print("shipping-label.pdf", settings)
$vbLabelText   $csharpLabel

プリンタードライバーはハードウェアレベルでコピー指示を受け取るため、5つの個別ジョブをキューに入れるよりも高速で信頼性があります。 このことは、別々のジョブが他のユーザーの書類で交互に挟み込まれる可能性のある共有ネットワークプリンターで重要です。

PrintSettings.NumberOfCopies は、明示的に設定されていない場合、デフォルトで 1 になります。 正の整数であればどのような値でも受け入れられます。0 または負の値に設定しても実質的な効果はなく、ドライバーは単一コピーにフォールバックします。

コピー数を他の印刷設定と組み合わせる方法

PrintSettings.NumberOfCopiesPrintSettings 上のプロパティの一つです。 用紙マージン、用紙サイズ、オリエンテーション、DPI、グレースケールモードとプリンター選択を1つの設定オブジェクトに組み合わせることができます:

:path=/static-assets/print/content-code-examples/how-to/set-number-of-copies/set-number-of-copies-combined-settings.cs
using IronPrint;

// Configure 3 copies with landscape A4 at 300 DPI
PrintSettings settings = new PrintSettings
{
    NumberOfCopies = 3,
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    Dpi = 300,
    PaperMargins = new Margins(15),
    Grayscale = false,
    PrinterName = "HP LaserJet Pro MFP M428"
};

// Print the Q4 report
Printer.Print("Q4-report.pdf", settings);
Imports IronPrint

' Configure 3 copies with landscape A4 at 300 DPI
Dim settings As New PrintSettings With {
    .NumberOfCopies = 3,
    .PaperSize = PaperSize.A4,
    .PaperOrientation = PaperOrientation.Landscape,
    .Dpi = 300,
    .PaperMargins = New Margins(15),
    .Grayscale = False,
    .PrinterName = "HP LaserJet Pro MFP M428"
}

' Print the Q4 report
Printer.Print("Q4-report.pdf", settings)
$vbLabelText   $csharpLabel

ノンブロッキングなワークフローの場合は、代わりに同じ PrintSettingsPrinter.Print() に渡してください。

コピー数に関するプラットフォーム制限はありますか?

一部のプラットフォームでは、プリンタードライバーが PrintSettings.NumberOfCopies で指定された正確なページ数を再現できない場合があります。 IronPrintのドキュメントには、プラットフォーム固有の制限が値を無視し、1つのコピーを結果とすることがあると記載されています。 これはドライバーレベルの制約であり、IronPrint の制限ではありません。

Windowsデスクトップアプリケーション(ほとんどの印刷ワークフローの主な対象)では、PrintSettings.NumberOfCopiesがローカルプリンターとネットワークプリンターの両方で確実に処理されます。 設定を無視し続けるプリンターがある場合、そのドライバーがWindowsのプリンターのプロパティパネルを通じてコラテッドマルチコピージョブをサポートすることを確認してください。

次のステップは何ですか?

PrintSettings.NumberOfCopies を使用して印刷部数を設定する方法、サイレント印刷および非同期印刷の実演、印刷部数とその他の設定の組み合わせ、およびプラットフォーム固有の注意点について解説しました。

さらなる学習のために、これらのリソースを探検してください:

無料トライアルライセンスを取得して実際の環境であらゆる機能をテストし、準備が整ったらライセンスオプションを表示します。

よくある質問

IronPrintを使用してC#で複数のコピーを印刷するにはどうしたらいいですか?

IronPrintで'NumberOfCopies'プロパティを設定することで、C#で簡単に印刷されたドキュメントの数を制御でき、複数のコピーを印刷できます。

IronPrintは静か印刷をサポートしていますか?

はい、IronPrintはユーザーインタラクションなしでドキュメントを印刷する静か印刷をサポートしており、自動化されたワークフローに最適です。

C#で非同期印刷にIronPrintを使用できますか?

IronPrintは非同期ワークフローのサポートを提供しており、印刷を非同期に行うことができ、アプリケーションのパフォーマンスを向上します。

IronPrintを使用して異なる印刷設定を組み合わせることは可能ですか?

IronPrintは、コピー数、紙のサイズ、方向など、さまざまな印刷設定を組み合わせることができ、柔軟な印刷ソリューションを提供します。

複数部の印刷でIronPrintを使用する利点は何ですか?

複数部の印刷にIronPrintを使用すると、単一のプロパティ調整でプロセスが簡素化され、静かおよび非同期印刷をサポートし、カスタマイズ可能な設定を提供します。

IronPrintの使用に追加のソフトウェアをインストールする必要がありますか?

IronPrintは.NETライブラリであり、C#アプリケーションに直接統合され、印刷タスクに追加のソフトウェアのインストールは必要ありません。

IronPrintはどのように大量印刷ジョブを処理しますか?

IronPrintは非同期操作をサポートし、印刷中もアプリケーションが処理を続けることができるため、大量印刷ジョブを効率的に管理します。

IronPrintは異なるプリンターモデルと互換性がありますか?

IronPrintはさまざまなプリンターモデルとの互換性を持つように設計され、異なる印刷環境において多様性を提供します。

IronPrintを使用して印刷品質をカスタマイズできますか?

はい、IronPrintは印刷品質の設定をカスタマイズすることができ、特定の要件に合わせた出力を調整できます。

IronPrintを使用するために必要なプログラミング知識は何ですか?

基本的なC#および.NETの知識が、IronPrintを効果的に使用し、その機能をアプリケーションに実装するために推奨されます。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 41,154 | バージョン: 2026.5 just released
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronPrint
サンプルを実行する プリンターに出力されるドキュメントを見る。