Node.jsでPDFファイルを読む方法

C#35; PDF パーサー

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

IronPDFのExtractAllTextメソッドを使ってC#でPDFファイルを解析し、ドキュメント全体または特定のページからテキストを抽出する。 このアプローチは、わずか数行のコードで、.NETアプリケーションのためのシンプルで効率的なPDFテキスト抽出を提供します。

IronPDFはC#アプリケーションでPDFの解析を簡単にします。 このチュートリアルでは、PDF生成と操作のための包括的なC#ライブラリであるIronPDFを使用して、わずか数ステップでPDFを解析する方法を示します。

クイックスタート: IronPDFでの効率的なPDF解析

最小限のコードでIronPDFを使ってC#でPDFを解析する。 この例では、元の書式を維持したままPDFファイルからすべてのテキストを抽出する方法を示します。 IronPDFのExtractAllTextメソッドは.NETアプリケーションへのシームレスなPDF解析統合を可能にします。 以下の手順に従って、簡単にセットアップと実行を行ってください。

Nuget Icon今すぐ NuGet で PDF を作成してみましょう:

  1. NuGet パッケージ マネージャーを使用して IronPDF をインストールします

    PM > Install-Package IronPdf

  2. このコード スニペットをコピーして実行します。

    var text = IronPdf.FromFile("sample.pdf").ExtractAllText();
  3. 実際の環境でテストするためにデプロイする

    今すぐ無料トライアルでプロジェクトに IronPDF を使い始めましょう
    arrow pointer

C#でPDFファイルを解析するには?

IronPdfを使えばPDFファイルの解析は簡単です。 下記のコードは、ExtractAllText メ ソ ッ ド を用いて、PDF 文書全体か ら テ キ ス ト の各行を抽出 し てい ます。 比較は、抽出されたPDFコンテンツとその出力を示しています。 このライブラリは、PDF文書の特定のセクションからテキストと画像を抽出することもサポートしています。

:path=/static-assets/pdf/content-code-examples/how-to/csharp-parse-pdf-parse-pdf.cs
using IronPdf;

// Select the desired PDF File
PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Extract all text from an pdf
string allText = pdf.ExtractAllText();

// Extract all text from page 1
string page1Text = pdf.ExtractTextFromPage(0);
$vbLabelText   $csharpLabel

IronPDFは様々なシナリオでPDFの解析を簡素化します。 HTMLからPDFへの変換、既存の文書からのコンテンツの抽出、高度なPDF機能の実装など、どのような作業であっても、ライブラリは包括的なサポートを提供します。

IronPDF は、 Windows アプリケーションとのシームレスな統合を提供し、 LinuxおよびmacOSプラットフォームへの展開をサポートします。 このライブラリは、クラウドベースのソリューションのAzureデプロイメントもサポートしています。

高度なテキスト抽出の例

IronPDFを使用してPDFコンテンツを解析するその他の方法はこちらです:

using IronPdf;

// Parse PDF from URL
var pdfFromUrl = PdfDocument.FromUrl("https://example.com/document.pdf");
string urlPdfText = pdfFromUrl.ExtractAllText();

// Parse password-protected PDFs
var protectedPdf = PdfDocument.FromFile("protected.pdf", "password123");
string protectedText = protectedPdf.ExtractAllText();

// Extract text from specific page range
var largePdf = PdfDocument.FromFile("large-document.pdf");
for (int i = 5; i < 10; i++)
{
    string pageText = largePdf.ExtractTextFromPage(i);
    Console.WriteLine($"Page {i + 1}: {pageText.Substring(0, 100)}...");
}
using IronPdf;

// Parse PDF from URL
var pdfFromUrl = PdfDocument.FromUrl("https://example.com/document.pdf");
string urlPdfText = pdfFromUrl.ExtractAllText();

// Parse password-protected PDFs
var protectedPdf = PdfDocument.FromFile("protected.pdf", "password123");
string protectedText = protectedPdf.ExtractAllText();

// Extract text from specific page range
var largePdf = PdfDocument.FromFile("large-document.pdf");
for (int i = 5; i < 10; i++)
{
    string pageText = largePdf.ExtractTextFromPage(i);
    Console.WriteLine($"Page {i + 1}: {pageText.Substring(0, 100)}...");
}
$vbLabelText   $csharpLabel

これらの例は、異なるPDFソースやシナリオを扱う際のIronPDFの柔軟性を示しています。 複雑な構文解析が必要な場合は、PDF DOM オブジェクトアクセスで構造化されたコンテンツを扱ってください。

異なるPDFタイプを扱う

IronPdfは様々なPDFタイプの解析に優れています:

using IronPdf;
using System.Text.RegularExpressions;

// Parse scanned PDFs with OCR (requires IronOcr)
var scannedPdf = PdfDocument.FromFile("scanned-document.pdf");
string ocrText = scannedPdf.ExtractAllText();

// Parse PDFs with forms
var formPdf = PdfDocument.FromFile("form.pdf");
string formText = formPdf.ExtractAllText();

// Extract and filter specific content
string invoiceText = pdf.ExtractAllText();
var invoiceNumber = Regex.Match(invoiceText, @"Invoice #: (\d+)").Groups[1].Value;
var totalAmount = Regex.Match(invoiceText, @"Total: \$([0-9,]+\.\d{2})").Groups[1].Value;
using IronPdf;
using System.Text.RegularExpressions;

// Parse scanned PDFs with OCR (requires IronOcr)
var scannedPdf = PdfDocument.FromFile("scanned-document.pdf");
string ocrText = scannedPdf.ExtractAllText();

// Parse PDFs with forms
var formPdf = PdfDocument.FromFile("form.pdf");
string formText = formPdf.ExtractAllText();

// Extract and filter specific content
string invoiceText = pdf.ExtractAllText();
var invoiceNumber = Regex.Match(invoiceText, @"Invoice #: (\d+)").Groups[1].Value;
var totalAmount = Regex.Match(invoiceText, @"Total: \$([0-9,]+\.\d{2})").Groups[1].Value;
$vbLabelText   $csharpLabel

パースされたPDFコンテンツを表示するにはどうすればよいですか?

C#フォームは、上記のコード実行から解析されたPDFコンテンツを表示します。 この出力は、文書処理のニーズに合わせてPDFから正確なテキストを提供します。

~ PDF

IronPDFのインストールとAdobe AcrobatのC#コード例によるHTMLからPDFへの変換を示すPDFチュートリアル

~ C# フォーム

抽出されたPDFテキストとインストールおよび使用方法を示すIronPDFアプリケーションウィンドウ

抽出されたテキストは、PDFの元の書式と構造を維持しているため、データ処理、コンテンツ分析、移行作業に最適です。 特定のコンテンツを検索して置き換えたり、他の形式にエクスポートしたりして、このテキストをさらに加工します。

PDF解析をアプリケーションに統合する

IronPDFの解析機能は様々なアプリケーションに統合されます:

// ASP.NET Core example
public IActionResult ParseUploadedPdf(IFormFile pdfFile)
{
    using var stream = pdfFile.OpenReadStream();
    var pdf = PdfDocument.FromStream(stream);

    var extractedText = pdf.ExtractAllText();

    // Process or store the extracted text
    return Json(new { 
        success = true, 
        textLength = extractedText.Length,
        preview = extractedText.Substring(0, Math.Min(500, extractedText.Length))
    });
}

// Console application example
static void BatchParsePdfs(string folderPath)
{
    var pdfFiles = Directory.GetFiles(folderPath, "*.pdf");

    foreach (var file in pdfFiles)
    {
        var pdf = PdfDocument.FromFile(file);
        var text = pdf.ExtractAllText();

        // Save extracted text
        var textFile = Path.ChangeExtension(file, ".txt");
        File.WriteAllText(textFile, text);

        Console.WriteLine($"Parsed: {Path.GetFileName(file)} - {text.Length} characters");
    }
}
// ASP.NET Core example
public IActionResult ParseUploadedPdf(IFormFile pdfFile)
{
    using var stream = pdfFile.OpenReadStream();
    var pdf = PdfDocument.FromStream(stream);

    var extractedText = pdf.ExtractAllText();

    // Process or store the extracted text
    return Json(new { 
        success = true, 
        textLength = extractedText.Length,
        preview = extractedText.Substring(0, Math.Min(500, extractedText.Length))
    });
}

// Console application example
static void BatchParsePdfs(string folderPath)
{
    var pdfFiles = Directory.GetFiles(folderPath, "*.pdf");

    foreach (var file in pdfFiles)
    {
        var pdf = PdfDocument.FromFile(file);
        var text = pdf.ExtractAllText();

        // Save extracted text
        var textFile = Path.ChangeExtension(file, ".txt");
        File.WriteAllText(textFile, text);

        Console.WriteLine($"Parsed: {Path.GetFileName(file)} - {text.Length} characters");
    }
}
$vbLabelText   $csharpLabel

これらの例では、Webアプリケーションやバッチ処理シナリオへのPDF解析の組み込みを示しています。 高度な実装については、複数のPDFを処理する際のパフォーマンスを向上させるasyncとマルチスレッドテクニックを探求してください。


ライブラリのクイックアクセス

Documentation related to ライブラリのクイックアクセス

ドキュメント

IronPDFとそのすべての機能についてのドキュメントはAPIリファレンスをお読みください。

ドキュメント

次に何ができるのかを見てみましょうか? こちらのチュートリアルページをご覧ください: PDFの編集

よくある質問

C# で PDF フ ァ イ ルか ら すべてのテ キ ス ト を抽出す る 方法は?

IronPDFのExtractAllTextメソッドを使ってPDFファイルからすべてのテキストを抽出することができます。IronPdf.FromFile("sample.pdf")でPDFを読み込み、ExtractAllText()を呼び出すだけで、元の書式を維持したまますべてのテキスト内容を取り出すことができます。

.NETでPDFを解析する最も簡単な方法は何ですか?

最もシンプルな方法はIronPDFを使い、たった1行のコードを書くことです: var text = IronPdf.FromFile("sample.pdf").ExtractAllText().var text = IronPdf.FromFile("sample.pdf").ExtractAllText(). このメソッドはPDF文書全体からすべての行のテキストを抽出します。

PDFの特定のページからテキストを抽出できますか?

はい、IronPDFは個々のページからテキストを抽出するExtractTextFromPageメソッドを提供しています。これにより、一度にすべてのコンテンツを抽出するのではなく、PDFドキュメントの特定のセクションをターゲットにすることができます。

パスワードで保護されたPDFをC#で解析するには?

IronPdfはパスワードで保護されたPDFの解析をサポートしています。PdfDocument.FromFile("protected.pdf", "password123")を使用して保護されたドキュメントを読み込み、ExtractAllText()を呼び出してテキスト内容を抽出します。

ローカルファイルではなくURLからPDFを解析できますか?

はい、IronPdfはPdfDocument.FromUrl("https://example.com/document.pdf")を使ってURLから直接PDFを解析することができます。URLからPDFをロードした後、ExtractAllText()を使用してテキストコンテンツを抽出します。

PDFパーサーはどのようなプラットフォームをサポートしていますか?

IronPDFはWindowsアプリケーション、Linux、macOS、Azureクラウドデプロイメントを含む複数のプラットフォームでPDF解析をサポートし、.NETアプリケーションに包括的なクロスプラットフォーム互換性を提供します。

PDFパーサーは、抽出時にテキストの書式を維持しますか?

はい、IronPDFのExtractAllTextメソッドは抽出時にPDFコンテンツの元の書式を維持し、解析されたテキストがソースドキュメントの構造とレイアウトを保持することを保証します。

PDFからテキストと画像の両方を抽出できますか?

IronPdfはPDFドキュメントからテキストと画像の両方を抽出することをサポートしています。テキスト抽出のためのExtractAllTextメソッドに加えて、ライブラリはPDF文書の特定のセクションから画像を抽出するための追加機能を提供します。

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

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

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

準備はできましたか?
Nuget ダウンロード 17,012,929 | バージョン: 2025.12 リリース