如何从pdf中提取文本和单词坐标?

时间:2013-08-13 07:23:00

标签: .net vb.net pdf

如何从.NET中的PDF文档中提取文本?另外,如何获得页面上每个单词的坐标?我可以使用iTextSharp或其他组件执行此操作吗?

2 个答案:

答案 0 :(得分:-1)

Docotic.Pdf library的帮助下,可以轻松完成任务。

下面是一个代码,它将所有带有坐标的单词写入系统控制台,并在每个找到的单词周围绘制矩形。

public static void extractAndDrawWordBounds(string inputFileName, string outputFileName)
{
    using (PdfDocument pdf = new PdfDocument(inputFileName))
    {
        PdfPage page = pdf.Pages[0];
        foreach (PdfTextData data in page.GetWords())
        {
            System.Console.WriteLine(data.ToString());
            page.Canvas.DrawRectangle(data.Bounds);
        }

        pdf.Save(outputFileName);
    }

    System.Diagnostics.Process.Start(outputFileName);
}

除此之外,图书馆可以提取格式化文本(PdfPage.GetTextWithFormatting方法)甚至个别字符(PdfPage.GetChars方法)

免责声明:我是该图书馆的开发人员之一。

答案 1 :(得分:-3)

尝试PDFLib TET

这是我发现的最好的工具,但它不是免费的(而且它也不便宜)。