IronPrint ハウツー ダイアログで印刷する C# でダイアログを使用してpdf 印刷する方法 カーティス・チャウ 更新日:2026年3月2日 IronPrint をダウンロード NuGet ダウンロード 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る This article was translated from English: Does it need improvement? Translated View the article in English 印刷ダイアログは、ユーザーがプリンターを選択し、コピー数を設定し、ページ範囲を選び、印刷前に用紙オプションを調整することを可能にする標準のOSウィンドウです。 ドキュメントの印刷方法と印刷先をユーザーが制御する必要があるデスクトップアプリケーションでは、このダイアログを表示することが期待される動作です。 IronPrint は、ユーザーの選択を適用し、選ばれたプリンターにドキュメントを送る、ネイティブの印刷ダイアログを表示する単一のメソッド — Printer.ShowPrintDialog() — を提供します。 1つの NuGet パッケージ をインストールし、1行のコードを書くだけです。 クイックスタート: ダイアログを使用して印刷 NuGet 経由で IronPrint をインストールする: Install-Package IronPrint ファイルに using IronPrint; を追加 ネイティブの印刷ダイアログを開くには Printer.ShowPrintDialog("filepath") を呼び出します (オプション)ダイアログのデフォルトをあらかじめ設定するために PrintSettings オブジェクトを渡す ユーザーがプリンター、コピー、およびオプションを選択した後に"印刷"をクリックします IronPrint をNuGetパッケージマネージャでインストール PM > Install-Package IronPrint このコード スニペットをコピーして実行します。 using IronPrint; // Display the print dialog and print the document Printer.ShowPrintDialog("document.pdf"); 実際の環境でテストするためにデプロイする 今日プロジェクトで IronPrint を使い始めましょう無料トライアル Free 30 Day Trial 最小限のワークフロー(5ステップ) IronPrint C#印刷ライブラリをインストール `Printer.ShowPrintDialog("filepath")` を呼び出す ユーザーがプリンター、コピー、およびページ範囲を選択します 選択したプリンターにドキュメントを送るために"印刷"をクリックします 選択した設定でドキュメントが印刷されることを確認します C# で印刷ダイアログはどのように動作するか? Printer.ShowPrintDialog() メソッドは、オペレーティングシステムのネイティブ印刷ダイアログを開きます。 ユーザーはフルセットの印刷オプション(プリンターの選択、コピー数、ページ範囲、向き、用紙サイズ)を見て、ジョブを送信するために"印刷"をクリックするか、印刷せずにダイアログを閉じるために"キャンセル"をクリックします。 内部では、ネイティブ for .NETアプローチは System.Windows.Forms.PrintDialog インスタンスを作成し、それを PrintDocument に接続し、印刷グラフィックサーフェスにコンテンツを描画するために PrintPage イベントを処理し、DialogResult を確認してから PrintDocument.Print() を呼び出す必要があります。 そのセットアップは通常15〜25行のコードを要します。 また、ビルトインPDFまたは画像レンダリングを含まず、ネイティブダイアログを通してPDFを印刷するためには、最初にPDFを描画可能なページに解析する必要があります。これには別のライブラリが必要です。 IronPrint は、ワンコールで全てのパイプラインを処理します: :path=/static-assets/print/content-code-examples/how-to/print-with-dialog/print-with-dialog-show-print-dialog-open-and-print.cs using IronPrint; // Open the dialog, let the user configure settings, and print Printer.ShowPrintDialog("quarterly-report.pdf"); Imports IronPrint ' Open the dialog, let the user configure settings, and print Printer.ShowPrintDialog("quarterly-report.pdf") $vbLabelText $csharpLabel このメソッドは、string としてファイルパスまたは byte[] として生ファイルデータを受け入れます。 IronPrint はドキュメント形式を検出し、適切なエンジンを通してレンダリングし、ダイアログを表示します。 ユーザーが確認すると、ドキュメントは選択された設定で印刷されます。 印刷ドキュメントチュートリアル は、印刷ライフサイクル全体を詳しく説明します。 ダイアログ設定を事前に構成する方法は? 私たちは、PrintSettings オブジェクトを作成し、2番目のパラメータとして渡すことで、ダイアログが開く前にデフォルト値を設定できます。 これにより、ダイアログはこれらの値を事前選択して開き、ユーザーはそのまま受け入れるか、任意の設定を上書きできます。 :path=/static-assets/print/content-code-examples/how-to/print-with-dialog/print-with-dialog-preconfigure-dialog-settings.cs using IronPrint; // Pre-configure defaults for the dialog var settings = new PrintSettings { PrinterName = "HP LaserJet Pro", PaperSize = PaperSize.A4, PaperOrientation = PaperOrientation.Portrait, Dpi = 300, NumberOfCopies = 2, Grayscale = false }; // Open dialog with pre-filled settings Printer.ShowPrintDialog("invoice.pdf", settings); Imports IronPrint ' Pre-configure defaults for the dialog Dim settings As New PrintSettings With { .PrinterName = "HP LaserJet Pro", .PaperSize = PaperSize.A4, .PaperOrientation = PaperOrientation.Portrait, .Dpi = 300, .NumberOfCopies = 2, .Grayscale = False } ' Open dialog with pre-filled settings Printer.ShowPrintDialog("invoice.pdf", settings) $vbLabelText $csharpLabel これは、アプリケーションが事前に可能性の高いプリンターまたは用紙形式を知っている場合に役立ちます。 たとえば、特定のサーマルプリンターで常にレシートを印刷するPOSシステムは、そのデバイスに PrinterName をデフォルト設定することができます。ユーザーはダイアログでそれを変更するオプションも持ち続けます。 システム上で利用可能なプリンターを発見するには、Printer.GetPrinterNames() を呼び出し、すべてのインストール済みプリンターの List<string> を返します。 同様に、Printer.GetPrinterTrays() は指定されたプリンターの利用可能な紙トレイを返します。 設定可能なプロパティの完全なリストには、PrinterName, PaperSize, PaperOrientation, Dpi, NumberOfCopies, Grayscale, PaperMargins, Flatten (PDF フォームフィールド用)、および Tray が含まれます。 印刷設定の操作方法 では、各プロパティをコード例とともに説明しています。 PrintSettings で設定されていないプロパティは、選択したプリンターの標準設定にデフォルトします。 ダイアログを非同期で表示するにはどのようにするか? Printer.ShowPrintDialogAsync() メソッドは Task を返し、await と互換性があります。 これにより、UIスレッドのブロックを防ぎます — このような場合は WPF、MAUI、およびユーザーインターフェイスが凍結すると悪いユーザー体験を生むアプリケーションにとって不可欠です。 :path=/static-assets/print/content-code-examples/how-to/print-with-dialog/print-with-dialog-show-print-dialog-async.cs using IronPrint; // Non-blocking dialog — the UI remains responsive await Printer.ShowPrintDialogAsync("report.pdf"); Imports IronPrint ' Non-blocking dialog — the UI remains responsive Await Printer.ShowPrintDialogAsync("report.pdf") $vbLabelText $csharpLabel ShowPrintDialogAsync() は同期バージョンと同じパラメータを受け取ります:ファイルパスまたはバイト配列、さらにオプションの PrintSettings オブジェクト。 非同期パターンは現代 for .NET開発全体で使われる タスクベースの非同期パターン に従います。 IronPrint は WinForms、WPF、MAUI、およびコンソールアプリケーション全体で動作します。 ダイアログの外観はホストプラットフォームとOSバージョンに適応し、ユーザーは常に期待されるネイティブ印刷ウィンドウを見ます。 ダイアログを使用する場合とサイレント印刷する場合 選択は、印刷ジョブに対するユーザーの制御の必要性に依存します。 基準 ダイアログで印刷 サイレント印刷 ユーザーの操作 ユーザーがプリンター、コピー、ページ範囲を選択 操作なし — すぐに印刷 最適な用途 デスクトップアプリ、一度きりの印刷、ユーザー向け機能 バッチジョブ、バックグラウンドサービス、キオスクアプリ プリンタの選択 ユーザーがダイアログから選択 プログラムで PrintSettings を通して設定 IronPrint メソッド Printer.ShowPrintDialog() Printer.Print() 非同期バリアント ShowPrintDialogAsync() PrintAsync() 印刷する前にユーザーが設定を確認または変更する必要がある場合にはダイアログを使用してください — レポートエクスポート、請求書印刷、または間違ったプリンターでページを無駄にする可能性のあるシナリオ。 アプリケーションがジョブ全体を制御し、人間の判断が不要な場合には、サイレント印刷 を使用します。 印刷ドキュメントチュートリアル で両方のアプローチを並べて示しています。 ドキュメント 印刷ダイアログはどのファイル形式をサポートしていますか? Printer.ShowPrintDialog() は サイレント印刷 と同じ形式をサポートします:PDF、 PNG、 TIFF、 JPEG、 GIF、 HTML、 BMP。形式にかかわらずファイルパスを渡し、IronPrint がレンダリングおよび印刷スプーラーとの通信を処理します。 ファイルデータが byte[] としても受け入れられ、これはドキュメントがメモリ内で生成されたり、データベースから取得された場合に便利です。 :path=/static-assets/print/content-code-examples/how-to/print-with-dialog/print-with-dialog-print-dialog-image-and-byte-array.cs using IronPrint; // Print an image with the dialog Printer.ShowPrintDialog("product-photo.png"); // Print from a byte array byte[] reportData = File.ReadAllBytes("monthly-report.pdf"); Printer.ShowPrintDialog(reportData); Imports IronPrint ' Print an image with the dialog Printer.ShowPrintDialog("product-photo.png") ' Print from a byte array Dim reportData As Byte() = File.ReadAllBytes("monthly-report.pdf") Printer.ShowPrintDialog(reportData) $vbLabelText $csharpLabel コード例のページ は、形式に特化したシナリオを示しています。 PDF 特有のワークフロー、すなわち PDF を生成してすぐに印刷する場合、IronPDF は IronPrint と自然に組み合わせられます。 IronPrint 対 IronPDF の比較 では、どちらをいつ使用するかを説明しています。 次のステップ ダイアログを使用した印刷は2つのメソッドに帰着します:同期呼び出し用に Printer.ShowPrintDialog() と、ブロッキングを回避する Printer.ShowPrintDialogAsync()。 PrintSettings でデフォルトを設定し、そこからユーザーが調整します。 どちらの方法も IronPrint のドキュメント形式のすべてをサポートし、WinForms、WPF、MAUI、コンソールプロジェクト全体で動作します。 IronPrint チュートリアルでは、フルウォークスルー、Printer クラス API リファレンス では利用可能なすべてのメソッド、または印刷設定の操作方法 で高度な設定を調査してください。 チェンジログ は最近の改善や新しい特徴を追跡します。 トライアルライセンスで無料の30日間トライアルを開始するして、ライブプロジェクトでダイアログ印刷をテストします — クレジットカードは不要です。 出荷の準備が整ったら、ライセンスオプション を $749 から開始してみてください。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 準備はできましたか? Nuget ダウンロード 38,930 | バージョン: 2026.4 リリース 無料トライアル NuGet 無料ダウンロード 総ダウンロード数: 38,930 ライセンスを見る まだスクロールしていますか? すぐに証拠が欲しいですか? PM > Install-Package IronPrint サンプルを実行する プリンターに出力されるドキュメントを見る。 NuGet 無料ダウンロード 総ダウンロード数: 38,930 ライセンスを見る