このページには自動翻訳されたテキストを含めることができます。
C# および VB.NET で PDF ドキュメントからテキスト、パス、画像を抽出する
Docotic.Pdf library を使用して、Windows、Linux、macOS、Android、iOS、またはクラウド環境の .NET で PDF ドキュメントからテキスト、画像、ベクターパスを抽出します。

PDF からテキストを取得する
Docotic.Pdf を使用すると、.NET で PDF ドキュメントをテキストに変換できます。このサンプルでは、C# で PDF を整形済みテキストに変換する方法を示します:
using BitMiracle.Docotic.Pdf;
using var pdf = new PdfDocument("your_document.pdf");
var options = new PdfTextExtractionOptions
{
SkipInvisibleText = true,
WithFormatting = true
};
string formattedText = pdf.GetText(options);
Console.WriteLine(formattedText);
PDF ページの特定部分からのみテキストを抽出できます。そのためには PdfTextExtractionOptions.Rectangle プロパティを使用します。
また、高度な解析のために、各テキストチャンクの詳細情報を取得することもできます。Docotic.Pdf を使用すると、PDF テキストを そのまま、単語ごとに、または 文字ごとに 抽出できます。このサンプルでは、C# で PDF テキストを単語ごとに抽出する方法を示します:
using var pdf = new PdfDocument("your_document.pdf");
PdfPage page = pdf.Pages[0];
foreach (PdfTextData data in page.GetWords())
{
Console.WriteLine(
$"{{\n" +
$" text: '{data.GetText()}',\n" +
$" bounds: {data.Bounds},\n" +
$" font name: '{data.Font.Name}',\n" +
$" font size: {data.FontSize},\n" +
$" transformation matrix: {data.TransformationMatrix},\n" +
$" rendering mode: '{data.RenderingMode}',\n" +
$" brush: {data.Brush},\n" +
$" pen: {data.Pen}\n" +
$"}},"
);
}
詳細と PDF からテキストへの変換に関する追加サンプルは、PDF からテキストを抽出する 記事を参照してください。
.NET で PDF から画像を取得する
このライブラリは、PDF ファイルから画像を そのまま抽出する か、描画済みとして抽出する ために使用できます。C# で PDF からすべての画像を抽出する方法:
using BitMiracle.Docotic.Pdf;
using var pdf = new PdfDocument("your_document.pdf");
int i = 0;
foreach (PdfImage image in pdf.GetImages())
{
string imageFile = image.Save(i.ToString());
++i;
}
抽出した画像は TIFF および JPEG 画像として保存できます。
このライブラリは、画像を抽出する際に再圧縮しません。PDF と同じ品質の画像が得られます。
また、画像がページ上のどこに実際に描画されているか に関する情報も取得できます。
PDF からベクターパスを抽出する
PdfPage.GetObjects() メソッド を使用すると、PDF ドキュメント内のベクターパスに関する情報を取得できます。詳細は ページオブジェクトのコピー および ページオブジェクトの抽出 のサンプルを参照してください。
また、PdfPage.GetObjects(PdfObjectExtractionOptions) オーバーロード を使用して、テキストをベクターパスとして抽出することもできます。この機能は、.NET で PDF 内のテキストをフラット化するために使用できます。