gpt4 book ai didi

pdf - 以编程方式识别 PDF 文件中的扫描文本

转载 作者:行者123 更新时间:2023-12-02 03:23:39 30 4
gpt4 key购买 nike

我有一个 PDF 文件,其中包含我们需要导入数据库的数据。这些文件似乎是打印的字母数字文本的 pdf 扫描件。貌似是10分英语字体格式一种。

是否有任何工具或组件可以让我识别和解析此文本?

最佳答案

我用过pdftohtml成功地将表格从 PDF 中剥离为 CSV。它基于Xpdf ,这是一个更通用的工具,包括 pdftotext 。我只是将其包装为来自 C# 的 Process.Start 调用。

如果您正在寻找更 DIY 一点的东西,可以选择 iTextSharp库 - Java 的端口 iText - 和PDFBox (是的,它说的是 Java - 但他们有一个 .NET 版本 IKVM.NET )。以下是一些有关使用 iTextSharp 的 CodeProject 文章和 PDFBox来自 C#。

而且,如果您确实是一个受虐狂,您可以调用 Adob​​e 的 PDF IFilter与 COM 互操作。 IFilter specs非常简单,但我猜互操作开销会很大。

编辑:重新阅读问题和后续答案后,很明显OP正在处理他的PDF中的图像。在这种情况下,您需要提取图像(上面的 PDF 库可以相当轻松地做到这一点)并通过 OCR 引擎运行它。

我用过MODI之前进行过交互,取得了不错的效果。它是 COM,因此通过互操作从 C# 调用它也是 doable又漂亮simple :

' lifted from http://en.wikipedia.org/wiki/Microsoft_Office_Document_Imaging
Dim inputFile As String = "C:\test\multipage.tif"
Dim strRecText As String = ""
Dim Doc1 As MODI.Document

Doc1 = New MODI.Document
Doc1.Create(inputFile)
Doc1.OCR() ' this will ocr all pages of a multi-page tiff file
Doc1.Save() ' this will save the deskewed reoriented images, and the OCR text, back to the inputFile

For imageCounter As Integer = 0 To (Doc1.Images.Count - 1) ' work your way through each page of results
strRecText &= Doc1.Images(imageCounter).Layout.Text ' this puts the ocr results into a string
Next

File.AppendAllText("C:\test\testmodi.txt", strRecText) ' write the OCR file out to disk

Doc1.Close() ' clean up
Doc1 = Nothing

其他类似Tesseract ,但我有直接的经验。我听说过有关它的好消息和坏消息,所以我想这很大程度上取决于您的源质量。

关于pdf - 以编程方式识别 PDF 文件中的扫描文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/158479/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com