如何在 .NET 中将扫描的 PDF 转换为可搜索的文档
如何在 .NET 中将扫描的 PDF 转换为可搜索的文档
扫描的PDF经常很困难,因为它们基本上只是文本图像。 将这些图像转换为可搜索、可编辑的文本文档,为文档管理和内容可访问的可能性开启了一个世界。 使用 Aspose.OCR for .NET,您可以将扫描的PDF转换为完全可搜索的文档,同时保存原始图像。
为什么将扫描的PDF转换为可搜索的文本文档?
可用性:- 使扫描内容可搜索,便于通过文档手动阅读而找到信息。
内容编辑:- 一旦转换为文本,内容可以编辑、更新或以其他格式重新使用。
效率:- 通过自动化将扫描的 PDF 转换为完全可用的文本文档的过程,节省时间。
要求: 设置扫描 PDF 文本提取
在从扫描的PDF中提取文本之前,请遵循以下步骤,以确保一切都安装:
安装 Aspose.OCR 为 .NET:- 使用 NuGet 将 Aspose.OCR 添加到您的项目中:
dotnet add package Aspose.OCR
获取您的许可证:- 设置您的测量许可证使用
SetMeteredKey()
打开 Aspose.OCR 的完整功能。修复您的扫描PDF:- 确保扫描的 PDF 具有良好的质量,以便更好地识别准确性。
步骤指南:将扫描的PDF转换为可搜索的文本
步骤1:设置您的许可证
开始设置您的 Aspose.OCR 许可证,以解锁所有功能。
using Aspose.OCR;
Metered license = new Metered();
license.SetMeteredKey("<your public key>", "<your private key>");
Console.WriteLine("License configured successfully.");
步骤2:将扫描的 PDF 加载到 OCR 输入对象
接下来,将扫描的 PDF 加载到 OcrInput 对象中,以启动 OCR 过程。
OcrInput input = new OcrInput(Aspose.OCR.InputType.PDF);
input.Add("scanned_document.pdf", 0, 3); // Process first 3 pages
Console.WriteLine("Scanned PDF loaded successfully.");
步骤3:设置 OCR 引擎识别
设置 OCR 引擎并设置任何识别设置,如语言和准确性。
Aspose.OCR.AsposeOcr recognitionEngine = new Aspose.OCR.AsposeOcr();
RecognitionSettings settings = new RecognitionSettings();
settings.Language = Aspose.OCR.Language.Latin; // Set OCR language
Console.WriteLine("OCR engine configured.");
步骤4:提取和输出认可的文本
现在,使用 OCR 引擎从扫描的 PDF 中提取文本。
List<Aspose.OCR.RecognitionResult> results = recognitionEngine.Recognize(input, settings);
Console.WriteLine("Text extracted successfully from the scanned PDF.");
// Output the recognized text
foreach (Aspose.OCR.RecognitionResult result in results)
{
Console.WriteLine(result.RecognitionText);
}
// Save the result to a text file
results[0].Save("recognized_text.txt", Aspose.OCR.SaveFormat.Text);
Console.WriteLine("Text saved to recognized_text.txt.");
步骤5:测试可搜索的PDF
确保提取的文本可搜索和编辑,通过在 PDF 浏览器或编辑器中测试输出。
常见问题和解决方案
1、低OCR准确性
- 解决方案:确保扫描的PDF具有高质量(至少300 DPI),以提高识别结果。
二、未支持的字体
- 解决方案:确保正确的语言在OCR设置中设置,以确保准确的文本识别,特别是非拉丁字符。
3. 缓慢性能大PDF
- 解决方案:对于大型PDF文件,将文档处理为较小的片段或页面,以减少内存使用量,并加快过程。