フッターコンテンツにスキップ
移行ガイド

C#でPDFPrinting.NETからIronPDFに移行する方法

PDFPrinting.NETからIronPDFに移行することで、PDFの機能を印刷のみのライブラリから、作成、操作、抽出、セキュリティ、印刷を含む完全なPDFライフサイクルを扱う包括的なソリューションへと拡張することができます。 このガイドでは、既存の印刷ワークフローを維持しながら、PDF生成、HTML変換、クロスプラットフォームサポート機能を追加する、完全でステップバイステップの移行パスを提供します。

PDFPrinting.NETからIronPDFに移行する理由

PDFPrinting.NETを理解する

PDFPrinting.NETは、サイレントPDF印刷において比類のないシンプルさと有効性を提供する特別なソリューションとして際立っています。 主にWindowsのエコシステム内で動作するPDFPrinting.NETは、アプリケーションにPDF印刷機能を統合する必要がある開発者向けに特別に設計された商用ライブラリです。 PDFPrinting.NETは、PDFの静かで堅牢な印刷のみに焦点を当てた専用ツールとして、ユーザーの介入なしにプログラム的に文書を印刷するという、しばしば複雑なタスクを簡素化することにそのニッチを見出します。

PDFPrinting.NETの最も重要な利点の1つは、ドキュメントを静かに印刷できることです。 通常の印刷ダイアログウィンドウをバイパスし、完全に自動化されたワークフロープロセスを容易にします。

印刷のみの制限

PDFPrinting.NETの顕著な制限は、PDF処理の印刷面のみを扱っていることです。 PDFドキュメントの作成、変更、操作ができないため、PDFドキュメントのライフサイクル全体に対するソリューションを必要とする開発者にとっての有用性が制限されます:

1.印刷のみ: PDF ドキュメントを作成、編集、または操作することはできません。

  1. Windows のみ: Windows 印刷インフラストラクチャに結び付けられており、Linux/macOS はサポートされていません。 Windowsの印刷インフラに依存しているため、Windowsのみの環境への適用が制限され、クロスプラットフォームでの使い勝手が制限されます。

  2. PDF を生成できません: HTML、URL、またはデータを PDF に変換できません。

4.ドキュメント操作不可: PDF を結合、分割、透かし入れ、保護することはできません。

5.テキスト抽出なし: PDF からコンテンツを読み取ったり抽出したりできません。

6.フォーム処理なし: PDF フォームに入力したりフラット化したりできません。

PDFPrinting.NETとIronPDFの比較

フィーチャー PDFPrinting.NET IronPDF
主な機能 サイレントPDF印刷 全サイクルの処理(作成、編集、印刷)
プラットフォームサポート Windowsのみ クロスプラットフォーム
PDF作成/操作機能 なし はい
HTMLからPDFへの変換 なし はい
自動ワークフローへの適合性 高い 高い
追加の依存関係 Windowsプリンタに依存 レンダリングのための内部ブラウザエンジン
サイレント印刷 はい はい
テキスト抽出 サポートされていません フルサポート
ライセンスについて 商用 商用

IronPDFはPDFハンドリングの完全なライフサイクルに対応することで、より包括的なソリューションを提供します。 PDFドキュメントの作成、編集、変換、印刷を容易にし、統一されたAPIを通じて開発者に一連の機能を提供します。 PDFPrinting.NETとは異なり、IronPDFは異なるプラットフォーム間で展開することができ、多様な環境で動作するアプリケーションのための汎用的な選択肢となります。

2025年、2026年まで.NET 10とC# 14の採用を計画しているチームにとって、IronPDFはWindows、Linux、macOSの環境で動作する完全なPDFソリューションを提供します。


始める前に

前提条件

  1. .NET 環境: .NET Framework 4.6.2+ または .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. NuGetアクセス: NuGetパッケージをインストールする機能
  3. IronPDFライセンス: ironpdf.comからライセンスキーを取得します。

NuGetパッケージの変更

# Remove PDFPrinting.NET
dotnet remove package PDFPrinting.NET

# Install IronPDF
dotnet add package IronPdf
# Remove PDFPrinting.NET
dotnet remove package PDFPrinting.NET

# Install IronPDF
dotnet add package IronPdf
SHELL

ライセンス構成

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
$vbLabelText   $csharpLabel

PDFPrinting.NETの使用法を特定する

# Find PDFPrinting.NET usage
grep -r "PDFPrinting\|PDFPrinter" --include="*.cs" .

# Find print-related code
grep -r "\.Print(\|PrinterName\|GetPrintDocument" --include="*.cs" .
# Find PDFPrinting.NET usage
grep -r "PDFPrinting\|PDFPrinter" --include="*.cs" .

# Find print-related code
grep -r "\.Print(\|PrinterName\|GetPrintDocument" --include="*.cs" .
SHELL

完全な API リファレンス

名前空間の変更

// Before: PDFPrinting.NET
using PDFPrinting.NET;
using PDFPrintingNET;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;
// Before: PDFPrinting.NET
using PDFPrinting.NET;
using PDFPrintingNET;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;
$vbLabelText   $csharpLabel

コア クラス マッピング

PDFPrinting.NET IronPDF ノート
PDFPrinter PdfDocument コアPDFオブジェクト
HtmlToPdfConverter ChromePdfRenderer PDF生成
WebPageToPdfConverter</code>|ChromePdfRenderer` URL変換
印刷設定のプロパティ PrintSettings 印刷設定

メソッド マッピングを印刷する

PDFPrinting.NET IronPDF ノート
printer.Print(filePath). pdf.Print() デフォルトのプリンタに印刷
printer.Print(path, printerName). pdf.Print(printerName). 特定のプリンタに印刷
printer.PrinterName = "...". pdf.Print("...") プリンタの指定
printer.GetPrintDocument(パス) pdf.GetPrintDocument() PrintDocumentを入手
printer.copies = n printSettings.NumberOfCopies = n. コピー数
printer.Duplex = true. printSettings.DuplexMode = Duplex.Vertical. 両面印刷
printer.CollatePages = true. printSettings.Collate = true. 照合

PDFPrinting.NETでは利用できない新機能

IronPDFの特徴 翻訳内容
renderer.RenderHtmlAsPdf(html). HTMLからPDFへの変換
renderer.RenderUrlAsPdf(url)のようにします。 URLからPDFへの変換
PdfDocument.Merge(pdfs). 複数のPDFをマージ
pdf.ApplyWatermark(html). 透かしの追加
pdf.SecuritySettings.UserPassword パスワード保護
pdf.ExtractAllText()を使用してください。 テキスト抽出

コード移行の例

例1: HTMLからPDFへの変換

ビフォア(PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
$vbLabelText   $csharpLabel

PDFPrinting.NETは、HtmlToPdfConverterConvertHtmlToPdf(html, outputPath)を使用しており、レンダリングと保存を1回の呼び出しで組み合わせています。 IronPDFはChromePdfRendererを使い、RenderHtmlAsPdf()PdfDocumentオブジェクトを返し、それをSaveAs()で保存します。 この分離により、より柔軟性が増し、保存前にPDFを操作(透かしの追加、他の文書との結合、セキュリティの追加)することができます。

IronPDFはHTMLからPDFへの変換のような機能を提供し、開発者がウェブコンテンツをPDFとしてレンダリングすることを可能にします。 ブラウザエンジンを内部的に活用することで、IronPdfはWebドキュメントのスタイルとレンダリングを正確にPDFに再現します。 包括的な例については、HTML to PDF documentationを参照してください。

例2: URLからPDFへの変換

ビフォア(PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new WebPageToPdfConverter();
        string url = "https://www.example.com";
        converter.Convert(url, "webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new WebPageToPdfConverter();
        string url = "https://www.example.com";
        converter.Convert(url, "webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string url = "https://www.example.com";
        var pdf = renderer.RenderUrlAsPdf(url);
        pdf.SaveAs("webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string url = "https://www.example.com";
        var pdf = renderer.RenderUrlAsPdf(url);
        pdf.SaveAs("webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
$vbLabelText   $csharpLabel

PDFPrinting.NETは、WebPageToPdfConverterConvert(url, outputPath)を使用します。 IronPDFは同じChromePdfRendererクラスとRenderUrlAsPdf()メソッドを使います。 IronPdfはHTML文字列とURLの両方に単一のレンダラー・クラスを使用し、両方の機能が必要な場合にコードを簡素化することに注意してください。 詳しくは、チュートリアルをご覧ください。

例3: ヘッダーとフッター

ビフォア(PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.HeaderText = "Company Report";
        converter.FooterText = "Page {page} of {total}";
        string html = "<html><body><h1>Document Content</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.HeaderText = "Company Report";
        converter.FooterText = "Page {page} of {total}";
        string html = "<html><body><h1>Document Content</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Company Report</div>"
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
        };
        string html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Company Report</div>"
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
        };
        string html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
$vbLabelText   $csharpLabel

PDFPrinting.NETは、プレースホルダ{page}{total}を持つ単純な文字列プロパティHeaderTextFooterTextを使用します。 IronPDFはHtmlHeaderFooterオブジェクトとHtmlFragmentプロパティを使用します。 プレースホルダーの構文変更に注意してください:PDFPrinting.NETは{total}を使用し、IronPDFは{total-pages}を使用します。


重要な移行に関する注意事項

プレースホルダーの構文の変更

ヘッダー/フッターのプレースホルダーはライブラリによって異なります:

// PDFPrinting.NET placeholders
"Page {page} of {total}"

//IronPDFplaceholders
"Page {page} of {total-pages}"
// PDFPrinting.NET placeholders
"Page {page} of {total}"

//IronPDFplaceholders
"Page {page} of {total-pages}"
$vbLabelText   $csharpLabel

ロードしてから印刷するパターン

PDFPrinting.NET はファイルパスを直接渡します; IronPDFが最初に読み込まれます:

// PDFPrinting.NET: Direct path to Print()
printer.Print("document.pdf");

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
// PDFPrinting.NET: Direct path to Print()
printer.Print("document.pdf");

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
$vbLabelText   $csharpLabel

印刷設定の移行

PDFPrinting.NET はプロパティを使用します; IronPDFは設定オブジェクトを使用します:

// PDFPrinting.NET: Properties on printer object
printer.Copies = 2;
printer.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);
// PDFPrinting.NET: Properties on printer object
printer.Copies = 2;
printer.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);
$vbLabelText   $csharpLabel

HTMLヘッダーとテキストヘッダーの比較

// PDFPrinting.NET: Simple text
converter.HeaderText = "Company Report";

// IronPDF:フルHTMLwith styling
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
// PDFPrinting.NET: Simple text
converter.HeaderText = "Company Report";

// IronPDF:フルHTMLwith styling
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
$vbLabelText   $csharpLabel

移行後の新機能

IronPDFに移行すると、PDFPrinting.NETでは提供できない機能を得ることができます:

PDFマージ

var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
$vbLabelText   $csharpLabel

ウォーターマーク

pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
$vbLabelText   $csharpLabel

パスワード保護

pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
$vbLabelText   $csharpLabel

テキスト抽出

string text = pdf.ExtractAllText();
string text = pdf.ExtractAllText();
$vbLabelText   $csharpLabel

生成-印刷ワークフロー

IronPdfを使えば、PDFの生成と印刷を一つのワークフローで行うことができます:

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice</h1>");
pdf.Print("Invoice Printer");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice</h1>");
pdf.Print("Invoice Printer");
$vbLabelText   $csharpLabel

クロスプラットフォーム印刷

PDFPrinting.NETはWindows専用です。 IronPDFはクロスプラットフォームで動作します:

Windows

pdf.Print("HP LaserJet");
pdf.Print("HP LaserJet");
$vbLabelText   $csharpLabel

Linuxについて

// Requires CUPS (Common Unix Printing System)
// Install: apt-get install cups
pdf.Print("HP_LaserJet");  // CUPS uses underscores instead of spaces
// Requires CUPS (Common Unix Printing System)
// Install: apt-get install cups
pdf.Print("HP_LaserJet");  // CUPS uses underscores instead of spaces
$vbLabelText   $csharpLabel

macOSについて

pdf.Print("HP LaserJet");
pdf.Print("HP LaserJet");
$vbLabelText   $csharpLabel

機能比較の概要

フィーチャー PDFPrinting.NET IronPDF
サイレント印刷
印刷設定
HTMLからPDFへ
URLからPDFへ
ヘッダー/フッター 基本 フルHTML
PDFのマージ
PDFの分割
透かし
テキスト抽出
パスワード保護
クロスプラットフォーム

移行チェックリスト

移行前

  • コードベース内のすべての PDFPrinting.NET の使用状況をインベントリします
  • 現在使用されているすべてのプリンタ名を文書化する
  • すべての印刷設定の構成をメモします
  • クロスプラットフォームサポートが必要かどうかを特定する -IronPDFライセンス キーの保存を計画する (環境変数を推奨)
  • まずはIronPDFの試用ライセンスでテストしてください

パッケージの変更

  • PDFPrinting.NET NuGet パッケージを削除する
  • IronPdf NuGet パッケージをインストールします: dotnet add package IronPdf

コードの変更

  • 名前空間のインポートを更新する -HtmlToPdfConverter`ChromePdfRendererに置き換える -WebPageToPdfConverterChromePdfRendererに置き換える
  • ConvertHtmlToPdf(html, path) RenderHtmlAsPdf(html).SaveAs(path)に置き換えます。
  • Convert(url, path) RenderUrlAsPdf(url).SaveAs(path)に置き換えます
  • ヘッダー/フッターをHeaderText / FooterTextからHtmlHeader / HtmlFooterに更新します
  • プレースホルダー構文を更新 ( {total}{total-pages} )
  • 印刷呼び出しをロードしてから印刷するパターンに変換する
  • 印刷設定をPrintSettingsオブジェクトに更新します

移行後

  • すべての対象プラットフォームで印刷をテストする
  • ヘッダー/フッターのレンダリングを確認する
  • 動的ドキュメント用のPDF生成を追加することを検討してください
  • 必要に応じて新しい機能(結合、透かし、セキュリティ)を追加します

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

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

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