如何在 .NET 中将扫描的 PDF 转换为可搜索的文本文档
如何在 .NET 中将扫描的 PDF 转换为可搜索的文本文档
扫描的 PDF 通常是不可编辑的,以图像为基础的文件,因此很难从中提取文本. 但是,使用 Aspose.OCR for .NET,您可以快速将这些扫描的 PDF 转化为可编辑的,可搜索的文本文件,使数据收集和文档管理更容易。
为什么要将扫描的PDF转换为可搜索的文本?
增强可用性:- 扫描的 PDF 可以转换为可搜索和编辑的文本,使内容更容易访问。
数据组织:- 一旦转换,文本可以被组织,操纵,并在各种格式重复使用,如Word,Excel或平板文本。
内容保留:- Aspose.OCR 确保原始图像和布局在文本提取时保持,为您提供内容和背景。
要求:准备扫描PDF转换
在您开始从扫描的PDF中提取文本的过程之前,请确保:
安装 Aspose.OCR 为 .NET:- 安装必要的图书馆使用 NuGet 与命令:
dotnet add package Aspose.OCR
许可证设置:- Obtain and configure a metered license using the
SetMeteredKey()
method to unlock all features.修复您的扫描PDF文件:- 确保您的扫描 PDF 质量良好(300 DPI 或更高),以获得最佳 OCR 结果。
步骤指南将扫描的PDF转换为文本
步骤1:设置您的许可证
首先,设置您的 Aspose.OCR 许可证,以确保完全访问功能。
using Aspose.OCR;
Metered license = new Metered();
license.SetMeteredKey("<your public key>", "<your private key>");
Console.WriteLine("Metered license configured successfully.");
步骤2:将扫描的 PDF 加载到 OCR 输入对象
将扫描的 PDF 文件上传到 OCR 引擎以获取文本识别。
OcrInput input = new OcrInput(Aspose.OCR.InputType.PDF);
input.Add("scanned_document.pdf", 0, 3); // Specify pages to process (first 3 pages)
Console.WriteLine("Scanned PDF loaded successfully.");
步骤3:设置 OCR 引擎识别
设置 OCR 引擎以优化从扫描的 PDF 文本提取。
Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Aspose.OCR.Language.Latin; // Specify OCR language (use Latin for English)
Console.WriteLine("OCR settings configured.");
步骤4:提取和保存认可的文本
处理扫描的 PDF 以提取文本并将其输出到文件中。
List<Aspose.OCR.RecognitionResult> results = recognitionEngine.Recognize(input, settings);
Console.WriteLine("Text extraction successful.");
// Output the recognized text to a file
results[0].Save("recognized_text.txt", Aspose.OCR.SaveFormat.Text);
Console.WriteLine("Recognized text saved to recognized_text.txt.");
步骤5:测试已认可的文本
提取后,通过检查输出文件或在控制台上显示它来验证文本识别的准确性。
常见问题和解决方案
1、低准确性
- 解决方案:确保扫描的 PDF 质量高(300 DPI 或更高),以获得更好的识别准确性。
二、错误的语言认可
- 解决方案: 明确指定 识别设置 中的语言设置,以获得更好的结果,特别是非拉丁字符。
3、对大文件的缓慢性能
- 解决方案:将大型 PDF 处理成碎片或优化内存使用,以加快 OCR 过程。