該頁面可以包含自動翻譯的文字。

使用 C# 和 VB.NET 從 PDF 文件中提取文字、路徑和圖像

使用 Docotic.Pdf 庫 在 Windows、Linux、macOS、Android、iOS 或雲端環境中從 .NET 中的 PDF 文件中提取文字、圖像、向量路徑。

提取文字和圖像

從 PDF 取得文本

您可以使用 Docotic.Pdf 將 PDF 文件轉換為 .NET 中的文字。 此範例展示如何使用 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 中的文字。