C#でiTextSharpを使用したPDFからのテキスト抽出VS IronPDF
現代のソフトウェアプロジェクトにおいて、PDFドキュメントからテキストを抽出することは一般的な要求です—請求書の処理から、検索エンジンのためのコンテンツマイニングまで。 開発者は、正確な結果を提供するだけでなく、C# .NETアプリケーションにおいて効率的な統合体験を提供する信頼できるライブラリを必要としています。 一部の開発者はOCR(光学式文字認識)ツールを使用してスキャンされたドキュメントや画像からデータを抽出しますが、時には強力なテキスト抽出ツールが必要な場合があります。
しかし、市場にはいくつものPDFライブラリがあるため、適切なツールを選ぶことは圧倒されることもあります。 会話の中でよく取り上げられる2つのライブラリが、iTextSharpとIronPDFです。 どちらもPDFからのテキスト抽出が可能ですが、使いやすさ、サポート、性能、および価格において大きな違いがあります。 この記事では、テキスト抽出処理をどのように取り扱うかを示す異なるコードサンプルを使って、これら2つのライブラリを比較し、プロジェクトに最も適した選択肢を決めるための手助けをします。
IronPDFとiTextSharpライブラリの概要
iTextSharpは長い間、.NET向けの人気のあるオープンソースPDFライブラリであり、コンテンツの生成、操作、および抽出に強力なツールを提供しています。 JavaベースのiTextのC#ポートとして、PDF構造に対する深い制御を提供し、高度なユーザーに理想的です。 しかし、この柔軟性には急な学習曲線とライセンス制約が伴います; 商業利用にはAGPLの義務を避けるための有料ライセンスが必要となることが多いです。
IronPDFの登場—.NET向けに構築された現代的で開発者に優しいPDFライブラリ。 直感的なAPI、明確なドキュメント、そして応答性の高いサポートにより、テキスト抽出のような一般的なタスクを簡素化します。 このツールを使用すると、画像やPDFドキュメントからテキストを簡単に抽出したり、新しいPDFファイルを作成したり、PDFセキュリティを実装したりすることができます。
iTextSharpとは異なり、IronPDFは低レベル構造を避け、迅速かつ効率的に作業可能です。 1ページの処理であれ何百ものPDFであれ、それを簡単に保ちます。
また、定期的な更新とライセンスモデルを採用しており、無料の試用版やチームや個人開発者向けの手頃なプランを提供しています。
IronPDFのインストールと使用
IronPDFは、NuGet Package Manager Consoleで次のコマンドを実行することでNuGet経由でインストールできます。
Install-Package IronPdf
または、NuGetパッケージマネージャでソリューション画面からインストールすることができます。 これを行うには、"ツール > NuGetパッケージマネージャ > ソリューションのNuGetパッケージを管理"へ移動します。 その後、"IronPDF"を検索し、"インストール"をクリックします。
IronPDFでPDFファイルからテキストを抽出
インストール後、テキスト抽出は簡単です:
using IronPdf;
// Load the PDF document
var pdf = PdfDocument.FromFile("invoice.pdf");
// Extract text from the PDF
string extractedText = pdf.ExtractAllText();
// Output the extracted text
Console.WriteLine(extractedText);using IronPdf;
// Load the PDF document
var pdf = PdfDocument.FromFile("invoice.pdf");
// Extract text from the PDF
string extractedText = pdf.ExtractAllText();
// Output the extracted text
Console.WriteLine(extractedText);注:このメソッドは、PDFファイル全体を読み込み、テキストを読み取り順に返し、従来のライブラリと比べて解析時間を数時間節約できます。
エンコーディング、コンテンツストリーム、または手動解析を扱う必要はありません。 IronPDFは内部でこれらすべてを処理し、最小限のセットアップでクリーンで正確な出力を提供します。その後、抽出したテキストを新しいテキストファイルに簡単に保存し、さらなる操作や使用が可能です。
iTextSharp PDFライブラリのインストール
PDF生成のためにiTextSharpのコアパッケージをダウンロードするには、次のコマンドを使用します:
Install-Package iTextSharp
また、Solution画面のPackage ManagerからiTextSharpをインストールすることもできます。 これを行うには、まずツールドロップダウンメニューを開き、"NuGet パッケージ マネージャ > ソリューションの NuGet パッケージを管理"を見つけます。 その後、単にiTextSharpを検索し、"インストール"をクリックします。
iTextSharpを使用してPDF文書からテキストを抽出する
単一のPDFページからテキストを抽出するサンプルはこちら:
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
// Define the path to your PDF
string path = "sample.pdf";
// Open the PDF reader and document
using (PdfReader reader = new PdfReader(path))
using (PdfDocument pdf = new PdfDocument(reader))
{
// Use a simple text extraction strategy
var strategy = new SimpleTextExtractionStrategy();
// Extract text from the first page
string pageText = PdfTextExtractor.GetTextFromPage(pdf.GetPage(1), strategy);
// Output the extracted text
Console.WriteLine(pageText);
}using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
// Define the path to your PDF
string path = "sample.pdf";
// Open the PDF reader and document
using (PdfReader reader = new PdfReader(path))
using (PdfDocument pdf = new PdfDocument(reader))
{
// Use a simple text extraction strategy
var strategy = new SimpleTextExtractionStrategy();
// Extract text from the first page
string pageText = PdfTextExtractor.GetTextFromPage(pdf.GetPage(1), strategy);
// Output the extracted text
Console.WriteLine(pageText);
}この例はiTextSharpの能力を示していますが、単純なタスクを行うために必要な詳細さと追加のオブジェクトに注意してください。
詳細な比較
今やインストールと基本的な使用法をカバーしたので、これらの2ライブラリが多ページのPDFドキュメントからテキストを抽出する方法の詳細な比較を見てみましょう。
高度な例: IronPDFを使用してページ範囲からテキストを抽出する
IronPDFはページ選択とレイアウト認識のテキスト抽出に対する細かい制御をサポートします。
using IronPdf;
// Load the PDF document
var pdf = PdfDocument.FromFile("longPdf.pdf");
// Define the page numbers to extract text from
int[] pages = new[] { 2, 3, 4 };
// Extract text from the specified pages
var text = pdf.ExtractTextFromPages(pages);
// Output the extracted text
Console.WriteLine("Extracted text from pages 2, 3, and 4:\n" + text);using IronPdf;
// Load the PDF document
var pdf = PdfDocument.FromFile("longPdf.pdf");
// Define the page numbers to extract text from
int[] pages = new[] { 2, 3, 4 };
// Extract text from the specified pages
var text = pdf.ExtractTextFromPages(pages);
// Output the extracted text
Console.WriteLine("Extracted text from pages 2, 3, and 4:\n" + text);高度な例: iTextSharpを使用してページ範囲からテキストを抽出する
iTextSharpでは、ページ範囲を手動で指定してPdfTextExtractorを使用してテキストを抽出する必要があります:
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using System.IO;
using System.Text;
// Load the PDF document
PdfReader reader = new PdfReader("longPdf.pdf");
StringBuilder textBuilder = new StringBuilder();
// Extract text from pages 2–4
for (int i = 2; i <= 4; i++)
{
string pageText = PdfTextExtractor.GetTextFromPage(reader, i, new LocationTextExtractionStrategy());
textBuilder.AppendLine(pageText);
}
// Output the extracted text
Console.WriteLine(textBuilder.ToString());
// Close the PDF reader
reader.Close();using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using System.IO;
using System.Text;
// Load the PDF document
PdfReader reader = new PdfReader("longPdf.pdf");
StringBuilder textBuilder = new StringBuilder();
// Extract text from pages 2–4
for (int i = 2; i <= 4; i++)
{
string pageText = PdfTextExtractor.GetTextFromPage(reader, i, new LocationTextExtractionStrategy());
textBuilder.AppendLine(pageText);
}
// Output the extracted text
Console.WriteLine(textBuilder.ToString());
// Close the PDF reader
reader.Close();コード比較の概要
IronPDFとiTextSharpの両方が高度なPDFテキスト抽出が可能ですが、そのアプローチは複雑さと明確さにおいて大きく異なります:
IronPDFは、クリーンで誰にでもアクセスしやすいです。 その高レベルのメソッドPdfDocument.ExtractAllText()は、最小限のセットアップで構造化されたコンテンツを抽出できるため、コードがシンプルで、PDF処理の初心者の開発者でも実装が簡単です。
- iTextSharpは、PDF構造のより深い理解を必要とします。 テキストを抽出するには、カスタムレンダリングリスナーの設定、ページの手動管理、レイアウトデータの行ごとの解釈が必要になります。強力ではありますが、冗長で直感的ではなく、IronPDFがほとんどの.NETプロジェクトにとってより迅速でメンテナンスしやすいオプションとなります。
しかし、我々の比較はここで終わりではありません。 次に、これらの2つのライブラリが他の分野でどのように比較されるかを見ていきましょう。
詳細な比較: IronPDF対iTextSharp
C#でのPDFテキスト抽出ライブラリを評価する際、開発者はしばしばシンプルさ、性能、長期的サポート間のバランスを考慮します。 IronPDFとiTextSharpが実際の使用で比較される際の特にC#でのPDF抽出の観点からの比較を見ていきましょう。
- 使いやすさ
IronPDF:クリーンで現代的なAPI
IronPDFは開発者の体験を重視しています。 NuGetから簡単にインストールでき、シンタックスも直感的です:
using IronPdf;
// Load the PDF
var pdf = PdfDocument.FromFile("sample.pdf");
// Extract all text from every page
string extractedText = pdf.ExtractAllText();
// Output the extracted text
Console.WriteLine(extractedText);using IronPdf;
// Load the PDF
var pdf = PdfDocument.FromFile("sample.pdf");
// Extract all text from every page
string extractedText = pdf.ExtractAllText();
// Output the extracted text
Console.WriteLine(extractedText);IronPDFは、ExtractAllText()のようなシンプルなメソッド呼び出しの背後に複雑さを抽象化し、ボイラープレートや解析ロジックを必要としません。
iTextSharp:より冗長で低レベル
iTextSharpは各ページの手動解析を必要とし、プレーンテキストを抽出するためにより多くの努力を必要とします。
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using System.IO;
using System.Text;
// Load the PDF
var reader = new PdfReader("sample.pdf");
StringBuilder text = new StringBuilder();
for (int i = 1; i <= reader.NumberOfPages; i++)
{
text.Append(PdfTextExtractor.GetTextFromPage(reader, i));
}
// Output the extracted text
Console.WriteLine(text.ToString());using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser;
using System.IO;
using System.Text;
// Load the PDF
var reader = new PdfReader("sample.pdf");
StringBuilder text = new StringBuilder();
for (int i = 1; i <= reader.NumberOfPages; i++)
{
text.Append(PdfTextExtractor.GetTextFromPage(reader, i));
}
// Output the extracted text
Console.WriteLine(text.ToString());開発者はページを手動でループする必要があり、エッジケースが発生するとバグの可能性が高まります。
- 性能と信頼性
IronPDFは現代のレンダリングエンジン(Chromium)に基づいて構築されており、埋め込みフォント、回転テキスト、複数のレイアウトを持つ現代的なPDFに適してします。 テキスト抽出はレイアウト認識があり、より自然にスペースを保ちます。
- iTextSharpは、強力ではありますが、複雑なフォーマットに苦労する可能性があります。 混在した向きや非標準のエンコーディングを持つPDFファイルは、文字化けや順序の誤ったテキストを生成する可能性があります。
- コストとライセンス
| 機能 | IronPDF | iTextSharp |
|---|---|---|
| ライセンスタイプ | 商業(無料トライアルあり) | AGPL(無料)/ 商業(有料) |
| 価格の透明性 | 公開価格 & 永続的ライセンス | 複雑なティアおよび再配布ルール |
| サポート | 専用サポートチーム | コミュニティサポート(ライセンスがない限り) |
| クローズドソースアプリでの使用 | はい(ライセンス付き) | AGPLではありません |
iTextSharpのAGPLは、あなたのコードをオープンソースにするか、商用ライセンスにお金を払うことを強制します。 IronPDFは、クローズドソースプロジェクトにより柔軟なライセンスモデルを提供します。
- 開発者サポートとドキュメント
IronPDF:最新のドキュメント、ビデオ チュートリアル、迅速なチケットベースのサポートが付属しています。
- iTextSharp:ドキュメントは充実していますが、有料顧客でない限り無料サポートは制限されています。
- クロスライブラリのまとめ
| 基準 | IronPDF | iTextSharp |
|---|---|---|
| 単純さ | 高 – ワンライナーのテキスト抽出 | 中 – 手動でのページ反復 |
| 性能 | 高速で現代的な解析 | 複雑またはスキャンされたPDFで遅い |
| 商業対応 | はい、AGPL制限なし | クローズドソースアプリではAGPLが制約 |
| サポートとドキュメント | 専用、応答的 | コミュニティに依存 |
| .NET Coreサポート | Full | 満杯 |
結論
PDFからC#でテキストを抽出する際、IronPDFとiTextSharpはどちらも強力なツールですが、異なる種類の開発者に対応しています。 もし現代的で、統合が簡単で、優れたサポートを持ち、積極的に維持され、レイアウトの保存がスムーズなソリューションを探しているなら、IronPDFが明らかに際立っています。 これは開発時間を短縮し、直感的なAPIを提供し、.NETフレームワーク内のさまざまなアプリケーション、ウェブアプリからエンタープライズシステムにまで広く対応します。
一方で、iTextSharpは、既にそのエコシステムに組み込まれた開発者やテキスト抽出戦略に対する詳細な制御を必要とする開発者には強力なオプションとして残っています。 しかし、その急な学習曲線と商業サポートの欠如は、迅速にスケールする必要があるプロジェクトや清潔なコードベースを維持するプロジェクトを遅らせる可能性があります。
.NET開発者が速度、明確さ、信頼できる結果を重視する場合、IronPDFは未来を見据えた道を提供します。 ドキュメント自動化ツール、検索エンジン、内部ダッシュボードを構築しているかどうかにかかわらず、IronPDFの強力な機能と性能は、より迅速かつスマートな成果を達成するのに役立ちます。
無料トライアル版をダウンロードして、IronPDFを今すぐお試しください。 無料トライアルと開発者に優しいAPIを使えば、数分で始められます。
BRACKET-i-OPEN--iTextSharpは各所有者の登録商標です。 このサイトはiTextSharpと関係がない、または推奨、スポンサーされていません。すべての製品名、ロゴ、およびブランドは、それぞれの所有者の財産です。 比較は情報提供のみを目的としており、執筆時点で公開されている情報を反映しています。
よくある質問
最新のライブラリを使用して C# で PDF からテキストを抽出する方法はありますか?
IronPDF を使用して、PdfDocument.ExtractAllText() などのメソッドを活用してPDFからテキストを抽出できます。これにより、プロセスが簡略化され、複雑な文書レイアウトからでも正確な結果が保証されます。
IronPDF と iTextSharp のテキスト抽出における主な違いは何ですか?
IronPDF は、iTextSharp よりも直感的な API と高速なパフォーマンスを提供します。複雑なレイアウトを効率的に処理し、テキスト抽出を簡略化する最新のレンダリング エンジンを備えている一方で、iTextSharp では、PDF 構造の手動コーディングと理解がより多く求められます。
IronPDF は、スキャンされたドキュメントからのテキスト抽出をどのように処理しますか?
IronPDF は標準の PDF からのテキスト抽出をサポートしています。スキャンされたドキュメントの場合には、PDF 内の画像からテキストを抽出するために IronOCR などの OCR ツールを統合できます。
商業プロジェクトで IronPDF を使用することのライセンス上の利点は何ですか?
IronPDF は AGPL 制限のないクリアな商業ライセンスモデルを提供しており、クローズドソースアプリケーションに適しています。また、個々の開発者やチーム向けの手頃なプランも提供しています。
IronPDF は、複雑なレイアウトを持つ PDF からのテキスト抽出に適していますか?
はい、IronPDF は複雑なレイアウトを持つ PDF からのテキスト抽出に適しています。レイアウト感知のテキスト抽出機能により、フォーマットと間隔が正確に保存されます。
PDF 処理ライブラリを C# プロジェクトにどのように統合できますか?
NuGet を介して IronPDF を C# プロジェクトに統合できます。NuGet パッケージマネージャーコンソールで Install-Package IronPdf コマンドを実行してプロジェクトに追加してください。
IronPDF を使用する開発者向けにどのようなサポートとリソースが利用可能ですか?
IronPDF は、最新のドキュメント、ビデオチュートリアル、および迅速なチケットベースの支援を通じて包括的なサポートを提供しており、.NET プロジェクトに統合しやすい開発者向けツールです。
特定の PDF ページからテキストを抽出することはできますか?
はい、IronPDF は PdfDocument.ExtractTextFromPages() などのメソッドを使用して特定のページからテキストを抽出することができ、テキスト抽出プロセスを細かく制御することができます。
なぜ IronPDF は PDF テキスト抽出に不慣れな開発者に推奨されるのですか?
IronPDF は、使いやすい API、簡単な統合プロセス、および詳細なサポートリソースによって、PDF 処理に不慣れな人にもアクセスしやすく推奨されています。
他のライブラリと比べて IronPDF のパフォーマンス上の利点は何ですか?
IronPDF は、モダンなレンダリングエンジンによってテキスト抽出速度を最適化し、複雑な PDF レイアウトを効率的に処理することで、他の多くのライブラリよりも高速です。






