C#でPDFテーブルを読む方法
PDFドキュメントから構造化された表データを抽出することは、データ分析、レポート作成、または他のシステムへの情報統合においてC#開発者にとって頻繁な必要性です。 しかし、PDFは一貫した視覚的なプレゼンテーションのために設計されており、データ抽出を簡単にはできません。 これにより、C#でPDFファイルからプログラム的にテーブルを読み取ることは難しい作業になる場合があります。特にテーブルは非常に多様で、シンプルなテキストベースのグリッドから、マージされたセルを持つ複雑なレイアウト、またはスキャンされた文書に埋め込まれた画像としてのテーブルまでさまざまです。
このガイドは、IronPDFを使用したPDFテーブル抽出のアプローチに関する包括的なC#チュートリアルを提供します。 私たちは主に、IronPDFの強力なテキスト抽出機能を活用してテキストベースのPDFから表形式のデータにアクセスし、解析する方法を探求します。 この方法の効果を論じ、解析のための戦略を提供し、抽出された情報の取り扱いについての洞察を提供します。 さらに、スキャンされたPDFを含む複雑なシナリオに取り組むための戦略にも触れます。
PDFからテーブルデータをC#で抽出するための重要なステップ
- PDF処理のためにIronPDF C#ライブラリをインストールします (https://nuget.org/packages/IronPdf/)。
- (オプションのデモ手順) IronPDF の
RenderHtmlAsPdfを使用して、HTML 文字列からテーブルを含むサンプル PDF を作成します。 (セクションを参照:デモステップ テーブルデータを含むPDFドキュメントを作成する) - 任意の PDF ドキュメントを読み込み、
ExtractAllTextメソッドを使用して生のテキスト コンテンツを取得します。 (See section: Extract All Text Containing Table Data from the PDF) - 抽出されたテキストを解析し、表の行とセルを識別するためのC#ロジックを実装します。 (See section: Parsing Extracted Text to Reconstruct Table Data in C#)
- 構造化された表データを出力するか、さらなる使用のためにCSVファイルに保存します。 (See section: Parsing Extracted Text to Reconstruct Table Data in C#)
- スキャンされたPDFの場合、OCRなどの高度な技術を検討します(後述します)。
IronPDF - C# PDFライブラリ
IronPDFは、.NETのPDF操作用のC# .NETライブラリソリューションであり、開発者がソフトウェアアプリケーション内でPDFドキュメントを簡単に読み、作成、編集するのを助けます。 (https://ironpdf.com/) その堅牢なChromiumエンジンは、HTMLからPDFドキュメントを高精度かつ高速でレンダリングします。 開発者がさまざまな形式からPDFおよびその逆への変換をシームレスに行うことを可能にします。 最新 for .NETフレームワーク(.NET 7、.NET 6、5、4、.NET Core、およびStandard)をサポートします。
さらに、IronPDF .NET 向け APIは開発者がPDFを操作および編集し、ヘッダーとフッターを追加し、重要なテキスト、画像、(以降で説明する)表データをPDFから簡単に抽出することを可能にします。
いくつかの重要な機能には:
- 様々なソースからPDFファイルを作成します(HTMLからPDF、画像からPDF)
- PDFファイルを読み込み、保存し、印刷する
- マージおよびPDFファイルを分割する
- PDFファイルからデータを抽出します(テキスト、画像、および表のような構造化データ)
IronPDFライブラリを使用してC#でテーブルデータを抽出する手順
PDFドキュメントから表データを抽出するには、C#プロジェクトを作成します:
-
Visual Studio: Visual Studio (例: 2022) がインストールされていることを確認します。 そうでない場合は、Visual Studioのウェブサイトからダウンロードしてください(https://visualstudio.microsoft.com/downloads/)。
2.プロジェクトを作成する:-
Visual Studio 2022を開き、新しいプロジェクトを作成をクリックします。
Visual Studioのスタート画面
-
-
"Console App"(またはお好みのC#プロジェクトタイプ)を選択し、次へをクリックします。
 **Visual Studioで新しいコンソールアプリケーションを作成する** -
プロジェクト名(例:"ReadPDFTableDemo")を付けて、次へをクリックします。
新しく作成したアプリケーションを設定する -
選択した.NET Framework(例:.NET 6以降)を選択します。
.NET Framework の選択- 作成をクリックします。 コンソールプロジェクトが作成されます。
- IronPDFをインストールします。
- Visual Studio NuGetパッケージ マネージャーの使用:
-
ソリューションエクスプローラーでプロジェクトを右クリックし、"NuGetパッケージの管理..."を選択します。
ツールとNuGetパッケージの管理
-
NuGetパッケージマネージャーで"IronPdf"を検索し、"インストール"をクリックします。
ツールとNuGetパッケージの管理- NuGetパッケージを直接ダウンロードします。IronPDFのNuGetパッケージ ページ ( https://www. NuGet.org/packages/ IronPDF/ ) にアクセスします。
- IronPDF .DLL ライブラリをダウンロード:公式IronPDF Web サイトからダウンロードし、プロジェクトで DLL を参照します。
(デモステップ) テーブルデータを含む PDF 文書を作成
このチュートリアルでは、最初に HTML 文字列から簡単なテーブルを含むサンプル PDF を作成します。 これにより、抽出プロセスを示すための既知の PDF 構造を得ることができます。 実際のシナリオでは、既存の PDF ファイルをロードします。
IronPDFの名前空間を追加し、オプションでライセンスキーを設定します(IronPDFは開発用に無料ですが、商業用デプロイメンにウォーターマークなしでライセンスが必要です):
using IronPdf;
using System; // For StringSplitOptions, Console
using System.IO; // For StreamWriter
// Apply your license key if you have one. Otherwise, IronPDF runs in trial mode.
// License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
using IronPdf;
using System; // For StringSplitOptions, Console
using System.IO; // For StreamWriter
// Apply your license key if you have one. Otherwise, IronPDF runs in trial mode.
// License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
Imports IronPdf
Imports System ' For StringSplitOptions, Console
Imports System.IO ' For StreamWriter
' Apply your license key if you have one. Otherwise, IronPDF runs in trial mode.
' License.LicenseKey = "YOUR-TRIAL/PURCHASED-LICENSE-KEY";
こちらがサンプルテーブルのHTML文字列です:
string HTML = "<html>" +
"<style>" +
"table, th, td {" +
"border:1px solid black;" +
"}" +
"</style>" +
"<body>" +
"<h1>A Simple table example</h1>" + // Corrected typo: h1 not h2
"<table>" +
"<tr>" +
"<th>Company</th>" +
"<th>Contact</th>" +
"<th>Country</th>" +
"</tr>" +
"<tr>" +
"<td>Alfreds Futterkiste</td>" +
"<td>Maria Anders</td>" +
"<td>Germany</td>" +
"</tr>" +
"<tr>" +
"<td>Centro comercial Moctezuma</td>" +
"<td>Francisco Chang</td>" +
"<td>Mexico</td>" +
"</tr>" +
"</table>" +
"<p>To understand the example better, we have added borders to the table.</p>" +
"</body>" +
"</html>";
string HTML = "<html>" +
"<style>" +
"table, th, td {" +
"border:1px solid black;" +
"}" +
"</style>" +
"<body>" +
"<h1>A Simple table example</h1>" + // Corrected typo: h1 not h2
"<table>" +
"<tr>" +
"<th>Company</th>" +
"<th>Contact</th>" +
"<th>Country</th>" +
"</tr>" +
"<tr>" +
"<td>Alfreds Futterkiste</td>" +
"<td>Maria Anders</td>" +
"<td>Germany</td>" +
"</tr>" +
"<tr>" +
"<td>Centro comercial Moctezuma</td>" +
"<td>Francisco Chang</td>" +
"<td>Mexico</td>" +
"</tr>" +
"</table>" +
"<p>To understand the example better, we have added borders to the table.</p>" +
"</body>" +
"</html>";
ここで、ChromePdfRenderer を使用して、この HTML から PDF を作成します。
var renderer = new ChromePdfRenderer();
PdfDocument pdfDocument = renderer.RenderHtmlAsPdf(HTML);
pdfDocument.SaveAs("table_example.pdf");
Console.WriteLine("Sample PDF 'table_example.pdf' created.");
var renderer = new ChromePdfRenderer();
PdfDocument pdfDocument = renderer.RenderHtmlAsPdf(HTML);
pdfDocument.SaveAs("table_example.pdf");
Console.WriteLine("Sample PDF 'table_example.pdf' created.");
Dim renderer = New ChromePdfRenderer()
Dim pdfDocument As PdfDocument = renderer.RenderHtmlAsPdf(HTML)
pdfDocument.SaveAs("table_example.pdf")
Console.WriteLine("Sample PDF 'table_example.pdf' created.")
SaveAs メソッドは PDF を保存します。 生成された table_example.pdf は次のようになります (HTML に基づく概念図):
NuGetパッケージマネージャーUIでIronPDFを検索する
PDFからテーブルデータを含むすべてのテキストを抽出する
テーブル データを抽出するには、まず PDF (先ほど作成したもの、または既存の PDF) を読み込み、ExtractAllText メソッドを使用します。 C#のString.Splitメソッドは、これに役立つ基本ツールです。
// Load the PDF (if you just created it, it's already loaded in pdfDocument)
// If loading an existing PDF:
// PdfDocument pdfDocument = PdfDocument.FromFile("table_example.pdf");
// Or use the one created above:
string allText = pdfDocument.ExtractAllText();
// Load the PDF (if you just created it, it's already loaded in pdfDocument)
// If loading an existing PDF:
// PdfDocument pdfDocument = PdfDocument.FromFile("table_example.pdf");
// Or use the one created above:
string allText = pdfDocument.ExtractAllText();
' Load the PDF (if you just created it, it's already loaded in pdfDocument)
' If loading an existing PDF:
' PdfDocument pdfDocument = PdfDocument.FromFile("table_example.pdf");
' Or use the one created above:
Dim allText As String = pdfDocument.ExtractAllText()
allText 変数には、PDF のテキスト コンテンツ全体が保持されるようになりました。 このコードは、テキストを行に分割します。
Console.WriteLine("\n--- Raw Extracted Text ---");
Console.WriteLine(allText);
Console.WriteLine("\n--- Raw Extracted Text ---");
Console.WriteLine(allText);
Imports Microsoft.VisualBasic
Console.WriteLine(vbLf & "--- Raw Extracted Text ---")
Console.WriteLine(allText)
テキストを抽出するための PDF ファイル
C# でテーブルデータを再構築するために抽出したテキストを解析する
抽出された生のテキストを用いて、次の課題は、この文字列を解析して表形式のデータを特定し構造化することです。 このステップは、PDF 内のテーブルの一貫性と形式に大きく依存しています。
一般的な解析戦略:
1.行区切り文字を識別する:改行文字 (\n または \r\n) は一般的な行区切り文字です。
- 列の区切り文字を特定: 行内のセルは複数のスペース、タブ、または特定の既知の文字(例: '|' または ';')で区切られることがあります。 時々、列が視覚的に整列していても明確なテキストの区切りがない場合、一定のスペーシングパターンに基づいて構造を推測することがありますが、これはより複雑です。
3.表以外のコンテンツをフィルターする:
ExtractAllTextメソッドはすべてのテキストを取得します。 テーブルを形成する実際のテキストを分離するためのロジックが必要です。おそらく、ヘッダーキーワードを探したり、前文/後文のテキストをスキップしたりします。
C# String.Split メソッドは、このための基本的なツールです。 ここに、サンプルからテーブルの行のみを抽出し、ピリオドのある行をフィルタリングしようとする例があります(この特定の例のためのシンプルなヒューリスティック):
Console.WriteLine("\n--- Parsed Table Data (Simple Heuristic) ---");
string[] textLines = allText.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string line in textLines)
{
// Simple filter: skip lines with a period, assuming they are not table data in this example
// and skip lines that are too short or headers if identifiable
if (line.Contains(".") || line.Contains("A Simple table example") || line.Length < 5)
{
continue;
}
else
{
// Further split line into cells based on expected delimiters (e.g., multiple spaces)
// This part requires careful adaptation to your PDF's table structure
// Example: string[] cells = line.Split(new[] { " ", "\t" }, StringSplitOptions.None);
Console.WriteLine(line); // For now, just print the filtered line
}
}
Console.WriteLine("\n--- Parsed Table Data (Simple Heuristic) ---");
string[] textLines = allText.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
foreach (string line in textLines)
{
// Simple filter: skip lines with a period, assuming they are not table data in this example
// and skip lines that are too short or headers if identifiable
if (line.Contains(".") || line.Contains("A Simple table example") || line.Length < 5)
{
continue;
}
else
{
// Further split line into cells based on expected delimiters (e.g., multiple spaces)
// This part requires careful adaptation to your PDF's table structure
// Example: string[] cells = line.Split(new[] { " ", "\t" }, StringSplitOptions.None);
Console.WriteLine(line); // For now, just print the filtered line
}
}
Imports Microsoft.VisualBasic
Console.WriteLine(vbLf & "--- Parsed Table Data (Simple Heuristic) ---")
Dim textLines() As String = allText.Split( { ControlChars.Cr, ControlChars.Lf }, StringSplitOptions.RemoveEmptyEntries)
For Each line As String In textLines
' Simple filter: skip lines with a period, assuming they are not table data in this example
' and skip lines that are too short or headers if identifiable
If line.Contains(".") OrElse line.Contains("A Simple table example") OrElse line.Length < 5 Then
Continue For
Else
' Further split line into cells based on expected delimiters (e.g., multiple spaces)
' This part requires careful adaptation to your PDF's table structure
' Example: string[] cells = line.Split(new[] { " ", "\t" }, StringSplitOptions.None);
Console.WriteLine(line) ' For now, just print the filtered line
End If
Next line
このコードはテキストを行に分割します。 if 条件は、この特定の例の表以外のテキストに対する非常に基本的なフィルターです。 現実のシナリオでは、テーブル行やセルを正確に識別して解析するために、より堅牢なロジックが必要になります。
シンプルにフィルタリングされたテキストの出力:
コンソールに抽出されたテキストが表示されます
テキスト解析メソッドに関する重要な考慮事項:
- 最適な対象: シンプルで一貫したテーブル構造を持ち、明確なテキスト区切りのあるテキストベースのPDF。
- 制限: このメソッドは次のことに苦しむ可能性があります:
- 統合されたセルや複雑な入れ子構造を持つテーブル。
- テキストの区切りではなく視覚的スペーシングによって列が定義されたテーブル。
- 画像として埋め込まれたテーブル(OCRが必要)。
- 一貫性のないテキスト抽出順序を引き起こすPDF生成の変動。
フィルタリングされた行(理想的にはテーブル行を表す)のCSVファイルに保存できます:
using (StreamWriter file = new StreamWriter("parsed_table_data.csv", false))
{
file.WriteLine("Company,Contact,Country"); // Write CSV Header
foreach (string line in textLines)
{
if (line.Contains(".") || line.Contains("A Simple table example") || line.Length < 5)
{
continue;
}
else
{
// For a real CSV, you'd split 'line' into cells and join with commas
// E.g., string[] cells = line.Split(new[] {" "}, StringSplitOptions.RemoveEmptyEntries);
// string csvLine = string.Join(",", cells);
// file.WriteLine(csvLine);
file.WriteLine(line.Replace(" ", ",").Trim()); // Basic replacement for this example
}
}
}
Console.WriteLine("\nFiltered table data saved to parsed_table_data.csv");
using (StreamWriter file = new StreamWriter("parsed_table_data.csv", false))
{
file.WriteLine("Company,Contact,Country"); // Write CSV Header
foreach (string line in textLines)
{
if (line.Contains(".") || line.Contains("A Simple table example") || line.Length < 5)
{
continue;
}
else
{
// For a real CSV, you'd split 'line' into cells and join with commas
// E.g., string[] cells = line.Split(new[] {" "}, StringSplitOptions.RemoveEmptyEntries);
// string csvLine = string.Join(",", cells);
// file.WriteLine(csvLine);
file.WriteLine(line.Replace(" ", ",").Trim()); // Basic replacement for this example
}
}
}
Console.WriteLine("\nFiltered table data saved to parsed_table_data.csv");
Imports Microsoft.VisualBasic
Using file As New StreamWriter("parsed_table_data.csv", False)
file.WriteLine("Company,Contact,Country") ' Write CSV Header
For Each line As String In textLines
If line.Contains(".") OrElse line.Contains("A Simple table example") OrElse line.Length < 5 Then
Continue For
Else
' For a real CSV, you'd split 'line' into cells and join with commas
' E.g., string[] cells = line.Split(new[] {" "}, StringSplitOptions.RemoveEmptyEntries);
' string csvLine = string.Join(",", cells);
' file.WriteLine(csvLine);
file.WriteLine(line.Replace(" ", ",").Trim()) ' Basic replacement for this example
End If
Next line
End Using
Console.WriteLine(vbLf & "Filtered table data saved to parsed_table_data.csv")
C#でのより複雑なPDFテーブル抽出の戦略
複雑または画像ベースのPDFテーブルからデータを抽出する場合、単純なテキスト解析よりも高度な技術が必要です。 IronPDFは、その支援となる機能を提供します:
*スキャンされた表に IronOCR の機能を使用する:表が画像内 (スキャンされた PDF など) にある場合、ExtractAllText() だけでは表をキャプチャできません。 IronOCRのテキスト検出機能は、まずこれらの画像をテキストに変換できます。
// Conceptual OCR usage (refer to IronOCR's documentation for detailed implementation)
// Install Package IronOcr
using IronOcr;
using (var ocrInput = new OcrInput("scanned_pdf_with_table.pdf"))
{
ocrInput.TargetDPI = 300; // Good DPI for OCR accuracy
var ocrResult = new IronOcr().Read(ocrInput);
string ocrExtractedText = ocrResult.Text;
// Now, apply parsing logic to 'ocrExtractedText'
Console.WriteLine("\n--- OCR Extracted Text for Table Parsing ---");
Console.WriteLine(ocrExtractedText);
}
// Conceptual OCR usage (refer to IronOCR's documentation for detailed implementation)
// Install Package IronOcr
using IronOcr;
using (var ocrInput = new OcrInput("scanned_pdf_with_table.pdf"))
{
ocrInput.TargetDPI = 300; // Good DPI for OCR accuracy
var ocrResult = new IronOcr().Read(ocrInput);
string ocrExtractedText = ocrResult.Text;
// Now, apply parsing logic to 'ocrExtractedText'
Console.WriteLine("\n--- OCR Extracted Text for Table Parsing ---");
Console.WriteLine(ocrExtractedText);
}
' Conceptual OCR usage (refer to IronOCR's documentation for detailed implementation)
' Install Package IronOcr
Imports Microsoft.VisualBasic
Imports IronOcr
Using ocrInput As New OcrInput("scanned_pdf_with_table.pdf")
ocrInput.TargetDPI = 300 ' Good DPI for OCR accuracy
Dim ocrResult = (New IronOcr()).Read(ocrInput)
Dim ocrExtractedText As String = ocrResult.Text
' Now, apply parsing logic to 'ocrExtractedText'
Console.WriteLine(vbLf & "--- OCR Extracted Text for Table Parsing ---")
Console.WriteLine(ocrExtractedText)
End Using
詳細なガイダンスについては、IronOCRのドキュメント(https://ironsoftware.com/csharp/ocr/)をご覧ください。 OCRの後、結果のテキスト文字列を解析します。
*座標ベースのテキスト抽出 (高度): IronPDF の ExtractAllText() はテキスト ストリームを提供しますが、シナリオによっては、各テキスト スニペットの x、y 座標を知っておくと便利な場合があります。 もしIronPdfがテキストをバウンディングボックス情報と一緒に取得するAPIを提供するならば(現在のドキュメントをチェックしてください)、視覚的なアライメントに基づいてテーブルを再構築するために、より洗練された空間解析が可能になるでしょう。
- PDFを別のフォーマットに変換する: IronPDFはPDFをHTMLのような構造化されたフォーマットに変換することができます。 多くの場合、HTMLテーブルの解析は、生のPDFテキストの解析よりも簡単です。
PdfDocument pdfToConvert = PdfDocument.FromFile("your_document.pdf");
string htmlOutput = pdfToConvert.ToHtmlString();
// Then use an HTML parsing library (e.g., HtmlAgilityPack) to extract tables from htmlOutput.
PdfDocument pdfToConvert = PdfDocument.FromFile("your_document.pdf");
string htmlOutput = pdfToConvert.ToHtmlString();
// Then use an HTML parsing library (e.g., HtmlAgilityPack) to extract tables from htmlOutput.
Dim pdfToConvert As PdfDocument = PdfDocument.FromFile("your_document.pdf")
Dim htmlOutput As String = pdfToConvert.ToHtmlString()
' Then use an HTML parsing library (e.g., HtmlAgilityPack) to extract tables from htmlOutput.
- パターン認識と正規表現:非常に予測可能なパターンを持つが、区切りが一貫していないテーブルの場合、抽出されたテキストに複雑な正規表現を適用することで、テーブルデータを分離できることがあります。
適切な戦略の選択は、ソースPDFの複雑さと一貫性によって決まります。 テキストベースの表を含む一般的なビジネス文書の多くでは、IronPDFのExtractAllTextとスマートなC#解析ロジックを組み合わせることで非常に効果的です。画像ベースの表では、OCR機能が不可欠です。
まとめ
この記事では、 IronPDFを使用して C# で PDF ドキュメントから表データを抽出する方法について説明しました。主に、ExtractAllText() メソッドとそれに続く文字列解析を活用することに焦点を当てています。 このアプローチはテキストベースのテーブルには強力ですが、画像ベースのテーブルのような複雑なシナリオはIronPDFのOCR機能を使うか、PDFを他のフォーマットに変換することで対応できます。
IronPDFは.NET開発者のための多用途なツールキットを提供し、作成や編集から包括的なデータ抽出まで、多くのPDF関連タスクを簡素化します。 ページ固有の抽出にはExtractTextFromPageなどのメソッドが提供され、 markdownやDOCXなどの形式から PDF への変換がサポートされます。
IronPDFは無料で開発することができ、無料トライアルライセンスを提供しています。 本番環境への導入については、さまざまなライセンスオプションが利用可能です。
詳細と高度な使用例については、IronPDFの公式ドキュメントと使用例をご覧ください (https://ironpdf.com/)
よくある質問
C#でPDFファイルからテーブルをプログラム的に読み取るにはどうすれば良いですか?
IronPDFの`ExtractAllText`メソッドを使用して、PDFドキュメントから生のテキストを抽出できます。抽出後、C#でこのテキストを解析し、テーブルの行とセルを識別することで構造化データを効率よく抽出できます。
C#でPDFからテーブルデータを抽出するための手順は何ですか?
このプロセスには、IronPDFライブラリのインストール、`ExtractAllText`メソッドを使用してテキストを取得、テキストを解析してテーブルを識別、および構造化データをCSVなどのフォーマットに保存する手順が含まれます。
C#でテーブルを含むスキャンされたPDFをどのように処理できますか?
スキャンされたPDFの場合、IronPDFはOCR(光学式文字認識)を利用して、テーブルの画像をテキストに変換し、その後このテキストを解析して表形式データを抽出できます。
IronPDFはテーブル抽出を容易にするためにPDFを他のフォーマットに変換できますか?
はい、IronPDFはPDFをHTMLに変換できます。これにより、開発者がHTML解析技術を使用できるため、テーブル抽出が簡略化されます。
IronPDFは複雑なPDFテーブルからデータを抽出するのに適していますか?
IronPDFは、複雑なテーブルレイアウトを処理するために使用できるOCRおよび座標に基づくテキスト抽出の高度な機能を提供しており、セルの結合や不一致の区切り記号を含む場合にも対応します。
IronPDFを.NET Coreアプリケーションに統合するにはどうすれば良いですか?
IronPDFは.NET Coreアプリケーションと互換性があります。Visual StudioでNuGetパッケージマネージャーを介してライブラリをインストールすることで統合できます。
C# で PDF 操作に IronPDF を使用するメリットは何ですか?
IronPDFはPDFの作成、編集、抽出、OCRやさまざまなフォーマットへの変換を含む多機能な機能を提供しており、.NET開発者にとって強力なツールです。
PDFからテーブルデータを抽出する際の一般的な課題は何ですか?
複雑なテーブルレイアウト、たとえば結合セル、画像として埋め込まれたテーブル、不一致の区切り文字などを処理することは、解析戦略やOCRを必要とするかもしれません。
PDF処理でIronPDFを使用し始めるにはどうすれば良いですか?
NuGetパッケージマネージャーを通じて、またはIronPDFのWebサイトからダウンロードして、IronPDFライブラリをインストールします。このセットアップは、C#プロジェクトでのPDF処理能力を利用するために重要です。
IronPDFを使用するにはライセンスが必要ですか?
IronPDFは開発用に無料ですが、商用展開で透かしを削除するにはライセンスが必要です。完全な機能をテストするための無料の試用ライセンスが利用できます。
PDF から表を抽出する場合、IronPDF は .NET 10 と互換性がありますか?
はい。IronPDF は .NET 10 (および .NET 9、8、7、6、Core、Standard、Framework) をサポートしているため、すべてのテーブル抽出機能は .NET 10 アプリケーションで変更なしで動作します。


