该页面可以包含自动翻译的文本。
从 PDF 文档中提取文本、路径和图像(C# 和 VB.NET)
使用 Docotic.Pdf 库 可在 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 提取文本 文章,获取更多 .NET 中 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 文本。