跳至页脚内容
OCR 工具

从 PDF 提取 OCR(免费在线工具)

光学字符识别,或称OCR,是一种用于识别图像中文本的技术。 这项技术是为了扫描印刷文本或图像文件,并在计算机上识别它们。 这是因为如今很多东西都是数字化的,比如电子邮件或书籍。 然而,OCR技术已经演变成更复杂的东西,具有专用算法,能够识别多种不同字体的文本,即便它们被噪音或其他常见失真的JPEG压缩所扭曲。 OCR还可以以98%的准确率读取纸上的手写内容。

通过OCR扫描的文本可以被编辑、索引、搜索、打印输出并存档。 OCR软件广泛应用于医疗、制药、保险及法律行业。 它有助于将纸质文件转换为数字文件,使其更容易重复使用并与他人共享。

让我们看看如何使用不同的工具对PDF文件进行OCR。

Adobe Acrobat Pro

Adobe是最早开发PDF的公司。 他们提供了一种快速、高效的OCR引擎,能够编辑任何您投放的PDF文档。 它是市场上最强大的OCR引擎之一,如果您有大量的PDF需要编辑,Adobe Acrobat DC是您应该购买的。 该软件设计得如此精确,可以将任何文本为基础的文档转换为PDF格式,并且精度极高。 它还通过其自定义字体生成器保留了原始文档的字体。

让我们看看如何使用Adobe Acrobat进行PDF OCR:

  • 在Adobe Acrobat Pro DC中打开文件。
  • 点击右侧窗格的"编辑PDF"选项。

    OCR From PDF Free Online Tools - Figure 1

  • 它将使用其OCR功能将PDF文件转换为可编辑的PDF。
  • 现在,您可以轻松编辑任何文本并更改文档中的图像文件。

    OCR From PDF Free Online Tools - Figure 2

  • 您可以通过选择"文件 > 另存为"并为新PDF文档命名来保存文件。

您可以一次轻松地对多个扫描的PDF文档进行OCR。

Sejda

Sejda是一款支持OCR功能的PDF编辑软件,可以在云端托管或下载为macOS、Windows或Linux的桌面应用程序。 Sejda允许用户压缩、编辑、数字签名、合并和填写PDF文件。 各种格式的文件,包括JPEG和Excel,均可转换为PDF。 PDF同样也可以转换为其他格式,如Word和PowerPoint文件。 让我们看看如何使用Sejda OCR对PDF文档进行OCR。

  • Open Sejda OCR website.
  • 点击"上传PDF文件"按钮上传文件,或将文件从您的计算机中拖放。
  • 上传后,您将看到上传的文件名。 选择文档的语言。

    OCR From PDF Free Online Tools - Figure 3

  • 选择语言后,您需要选择输出格式。 您可以选择"PDF"或"文本"。 设置输出格式后,点击"识别所有页面上的文本"按钮。 它将开始提取文本。

    OCR From PDF Free Online Tools - Figure 4

  • 完成后,您可以下载提取的文本。

    OCR From PDF Free Online Tools - Figure 5

SodaPDF

SodaPDF OCR是免费的在线OCR软件,可以从图像中提取文本。 它是一种PDF OCR转换工具,可以将扫描的文档、传真及其他打印件转换为可编辑的文本、PDF和可搜索的PDF。 SodaPDF OCR最常见的用途是将扫描的文档或传真转换为可编辑文件。 它是免费的在线OCR软件。 所有上传的文档在特定时间后会从服务器自动删除。它具有多种功能,比如将PDF转换成Word,然后就可以使用Microsoft Word打开。

让我们看看如何使用SodaPDF对PDF进行OCR:

  • Open the SodaPDF website.
  • 点击"选择文件"按钮并选择要上传的PDF文档。
  • 上传后,它将为您提供一个用户界面以便编辑PDF文本和图像。 您可以使用下载按钮下载文件。

    OCR From PDF Free Online Tools - Figure 6

IronOCR:.NET OCR库

IronOCR是.NET Framework中的一个强大的OCR库。 它提供了一个强大的API来处理文本和图像,具备实时识别、字段检测和扫描PDF文件的光学字符识别等功能。 IronPDF也可以编辑扫描文档。

IronOCR使开发人员可以在他们的应用程序中实现文本识别的功能。 它可以用于各种用途,比如将扫描的文档转换为数字格式或识别图像上的字幕。 IronOCR .NET库提供了一个易用的低级接口给IronOCR SDK。 除此之外,它包括一个图像处理管道,可以自动处理低DPI图像并从PDF文档中提取文本。

让我们看看如何使用OCR工具对PDF文件进行OCR。

完整PDF文件的OCR

以下代码能够对整个PDF文档进行OCR。

using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add the entire PDF document for OCR processing
    Input.AddPdf("example.pdf", "password");

    var Result = Ocr.Read(Input);
    // Print the extracted text to the console
    Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add the entire PDF document for OCR processing
    Input.AddPdf("example.pdf", "password");

    var Result = Ocr.Read(Input);
    // Print the extracted text to the console
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()

Using Input = New OcrInput()
	' Add the entire PDF document for OCR processing
	Input.AddPdf("example.pdf", "password")

	Dim Result = Ocr.Read(Input)
	' Print the extracted text to the console
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

选择PDF页面的OCR

您可以使用AddPdfPages函数对选定的PDF页面进行OCR。

using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add specific pages of the PDF document for OCR processing
    Input.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    var Result = Ocr.Read(Input);
    // Print the extracted text to the console
    Console.WriteLine(Result.Text);
}
using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add specific pages of the PDF document for OCR processing
    Input.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    var Result = Ocr.Read(Input);
    // Print the extracted text to the console
    Console.WriteLine(Result.Text);
}
Imports IronOcr

Private Ocr = New IronTesseract()

Using Input = New OcrInput()
	' Add specific pages of the PDF document for OCR processing
	Input.AddPdfPages("example.pdf", { 1, 2, 3 }, "password")

	Dim Result = Ocr.Read(Input)
	' Print the extracted text to the console
	Console.WriteLine(Result.Text)
End Using
$vbLabelText   $csharpLabel

将PDF转换为可搜索的PDF

您可以使用IronOCR的SaveAsSearchablePdf函数将PDF文件转换为可搜索的PDF文件。

using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add the PDF for processing and specify the password if any
    Input.AddPdf("scan.pdf", "password");

    // Correct twisted or skewed pages
    Input.Deskew();

    var Result = Ocr.Read(Input);
    // Save the processed result as a searchable PDF
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;

var Ocr = new IronTesseract();

using (var Input = new OcrInput())
{
    // Add the PDF for processing and specify the password if any
    Input.AddPdf("scan.pdf", "password");

    // Correct twisted or skewed pages
    Input.Deskew();

    var Result = Ocr.Read(Input);
    // Save the processed result as a searchable PDF
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr

Private Ocr = New IronTesseract()

Using Input = New OcrInput()
	' Add the PDF for processing and specify the password if any
	Input.AddPdf("scan.pdf", "password")

	' Correct twisted or skewed pages
	Input.Deskew()

	Dim Result = Ocr.Read(Input)
	' Save the processed result as a searchable PDF
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

结论

我们探讨了一些用于执行光学字符识别的优秀软件工具。 这些工具允许您通过编程识别文本并创建可搜索和可编辑的PDF。

如果在.NET Framework中编写程序,IronOCR是我们的推荐。 IronOCR使您可以轻松在.NET Framework中执行OCR; 它功能强大,即便原始文档已被损坏或扭曲,例如受水损,也能轻松使用。

另一个用例是将旧的手填写的纸质表格,如发票和销售收据,转换为数字版本。 这让这些文档可以被会计软件自动处理,从而提高准确性和效率。

Kannaopat Udonpant
软件工程师
在成为软件工程师之前,Kannapat 在日本北海道大学完成了环境资源博士学位。在攻读学位期间,Kannapat 还成为了车辆机器人实验室的成员,隶属于生物生产工程系。2022 年,他利用自己的 C# 技能加入 Iron Software 的工程团队,专注于 IronPDF。Kannapat 珍视他的工作,因为他可以直接从编写大多数 IronPDF 代码的开发者那里学习。除了同行学习外,Kannapat 还喜欢在 Iron Software 工作的社交方面。不撰写代码或文档时,Kannapat 通常可以在他的 PS5 上玩游戏或重温《最后生还者》。