使用 IronOCR 在 C# 中讀取掃描的文件
IronOCR 可讓 C# 開發人員使用 OCR 技術從掃描的 PDF 和影像中擷取文字,僅需幾行程式碼即可將不可搜尋的影像式文件轉換為可搜尋、可存取的內容。
許多 PDF 文件包含無法搜尋的、基於圖像的文字。 IronOCR 將此轉換為可搜尋的內容,讓您更容易找到特定資訊,並提升文件的可讀性,尤其是對有視覺障礙的人而言。
自動提取無需手動複製或重新建立文字和圖像,從而確保準確性和效率。 這對於研究、法律文件和內容創作特別有用,因為重複使用 PDF 的特定部分是很常見的事。
企業可以從 PDF 文件中提取關鍵數據進行分析或系統集成,從而簡化工作流程。 設計師和行銷人員還可以提取圖像,以便在各種項目中進行增強和重複使用。
在本教程中,我們將探索OcrPdfInput方法,介紹可用的選項和參數,以展示 IronOCR 如何簡化 PDF 文字和圖像擷取,從而應用於各種應用程式。
若要使用此功能,您還必須安裝IronOcr.Extensions.AdvancedScan軟體套件。
<! --
--> <!--說明:流程圖顯示從掃描文件輸入、OCR 處理到文字輸出的步驟 -->
快速入門:從掃描的 PDF 或圖像中提取文字
只需一行代碼,您就可以使用 IronOCR 的 OcrInput.LoadPdf 或 LoadImage 載入掃描的 PDF 或影像,並透過 ReadDocument 即時擷取文字。 非常適合希望快速啟動並運行 OCR 功能的開發人員。
立即開始使用 NuGet 建立 PDF 檔案:
使用 NuGet 套件管理器安裝 IronOCR
複製並運行這段程式碼。
var text = new IronOcr.IronTesseract().ReadDocument(new IronOcr.OcrInput().LoadPdf("scanned.pdf")).Text;部署到您的生產環境進行測試
最小工作流程(5 個步驟)
- 下載用於讀取掃描文件的 C# 庫
- 導入掃描文件進行處理
- 對於影像,請使用
LoadImage方法;對於掃描的 PDF 文件,請使用LoadPdf方法。 - 使用
ReadDocument方法提取文本 - 根據需要保存或導出提取的文本以供進一步使用
如何從掃描的文件中萃取文字? 若要從文件中的所有圖像中提取文本,請使用`ReadDocument`方法。 此方法會處理文件,並傳回一個包含抽取文字的物件,此物件可透過 `Text` 屬性存取。 下面的範例示範如何使用此方法處理[範例 TIFF](/static-assets/ocr/how-to/read-scanned-document/potter.tiff)檔案。 IronOCR 支援多種文件格式的掃描。 對於圖像,您可以使用 [JPG、PNG、GIF、TIFF 和 BMP 格式](https://ironsoftware.com/csharp/ocr/how-to/input-images/),而 PDF 支援則包括 [ 單頁和多頁文件](https://ironsoftware.com/csharp/ocr/how-to/input-pdfs/)。 該資料庫使用先進的 [Tesseract 5 技術](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-5/),以確保所有支援格式的高準確性。 [{i:(@ - 目前此方法僅適用於英文、中文、日文、韓文和拉丁字母。 - 在 .NET Framework 上使用進階掃描功能需要專案在 x64 架構上運作。 @@--括號關閉--@@輸入的文件是什麼樣子? 如何執行 OCR 程式碼? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/read-scanned-document-read-scanned-document.cs ```我可以從 OCR 處理中期待哪些結果? 。 如果您需要對 PDF 檔案執行 OCR,只需將`LoadImage`方法替換為`LoadPdf`即可。 這樣,IronOCR 就可以用同樣的方法處理和擷取掃描 PDF 中的文字。 ## 進階文件處理選項 在處理掃描文件時,您通常需要對 OCR 過程有更多的控制。 IronOCR 提供多種進階功能,可提升文字擷取結果。 ### 處理多頁文件 對於有多頁的文件,IronOCR 可以有效率地進行批次處理: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); // Load a multi-page PDF input.LoadPdf("multi-page-document.pdf"); // Process all pages OcrResult result = ocr.ReadDocument(input); // Access individual page results foreach (var page in result.Pages) { Console.WriteLine($"Page {page.PageNumber}: {page.Text}"); } ``` ### 優化 OCR 效能 掃描文件的品質會直接影響 OCR 的精確度。 IronOCR for .NET 內建 [影像最佳化篩選器](https://ironsoftware.com/csharp/ocr/examples/ocr-image-filters-for-net-tesseract/),可增強文字辨識能力: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); // Load and enhance image quality input.LoadImage("low-quality-scan.jpg"); input.Deskew(); // Correct image skew input.DeNoise(); // Remove background noise input.Binarize(); // Convert to black and white OcrResult result = ocr.ReadDocument(input); ``` ### 建立可搜尋的 PDFs 在處理掃描文件時,最有價值的功能之一是 [ 建立可搜尋的 PDF](https://ironsoftware.com/csharp/ocr/how-to/searchable-pdf/) 的能力。 這樣既能保持原始文件的外觀,又能增加文字層次: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); input.LoadPdf("scanned-document.pdf"); // Process and save as searchable PDF OcrResult result = ocr.ReadDocument(input); result.SaveAsSearchablePdf("searchable-output.pdf"); ``` ## 處理不同的文件類型 IronOCR 擅長處理商業環境中常見的各種文件類型。 無論您要處理的是發票、合約或歷史文件,這個資料庫都提供了從不同來源擷取資料的專門功能。 ### 處理傳統文件 許多組織都有舊格式的掃描文件檔案。 IronOCR 能有效率地處理這些工作,包括支援文件管理系統常用的 [ 多頁 TIFF 檔案](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multipage-tiff/)。 ### 語言支援 雖然本範例著重於英文文字,但 IronOCR 支援 [超過 125 種國際語言](https://ironsoftware.com/csharp/ocr/examples/intl-languages/)。 因此非常適合處理多語言文件或非英語語言的文件。 ## 文件掃描的最佳作法 在處理掃描文件時達到最佳效果: 1.**掃描品質**:使用最低 300 DPI 的解析度以獲得最佳效果 2.**檔案格式**:對於文字文件,TIFF 和 PNG 格式比 JPEG 更能保持品質 3.**預先處理**:根據您的文件條件套用適當的篩選條件 4.**效能**:對於大量的批次,請考慮使用 [多執行緒功能](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multithreading-for-speed/)。 ## 疑難排解常見問題 在處理掃描文件時,您可能會遇到各種挑戰。 以下是常見問題的解決方案: - **品質不佳的掃描**:在 OCR 處理前套用增強篩選器 - **斜體文件**:使用 `Deskew()` 方法來修正方向 - **混合內容**:如果文件同時包含文字和非文字元素,則處理特定區域 如需更詳細的指導,請參閱我們的 [ 全面的 C# OCR 教學](https://ironsoftware.com/csharp/ocr/tutorials/c-sharp-tesseract-ocr/),或查看 [ 簡單的 OCR 實例](https://ironsoftware.com/csharp/ocr/examples/simple-csharp-ocr-tesseract/),以快速上手。 ## 後續步驟 現在您已瞭解如何從掃描的文件中擷取文字,您可以探索更進階的功能,例如 [ 製作任何可搜尋的 PDF](https://ironsoftware.com/csharp/ocr/examples/make-pdf-searchable/) 或為 Web 應用程式處理 [ PDF 串流](https://ironsoftware.com/csharp/ocr/examples/ocr-for-pdf-stream/)。 IronOCR 的靈活性使其適用於從簡單的文件數位化到複雜的企業文件處理工作流程。
如何執行 OCR 程式碼? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/read-scanned-document-read-scanned-document.cs ```我可以從 OCR 處理中期待哪些結果? 。 如果您需要對 PDF 檔案執行 OCR,只需將`LoadImage`方法替換為`LoadPdf`即可。 這樣,IronOCR 就可以用同樣的方法處理和擷取掃描 PDF 中的文字。 ## 進階文件處理選項 在處理掃描文件時,您通常需要對 OCR 過程有更多的控制。 IronOCR 提供多種進階功能,可提升文字擷取結果。 ### 處理多頁文件 對於有多頁的文件,IronOCR 可以有效率地進行批次處理: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); // Load a multi-page PDF input.LoadPdf("multi-page-document.pdf"); // Process all pages OcrResult result = ocr.ReadDocument(input); // Access individual page results foreach (var page in result.Pages) { Console.WriteLine($"Page {page.PageNumber}: {page.Text}"); } ``` ### 優化 OCR 效能 掃描文件的品質會直接影響 OCR 的精確度。 IronOCR for .NET 內建 [影像最佳化篩選器](https://ironsoftware.com/csharp/ocr/examples/ocr-image-filters-for-net-tesseract/),可增強文字辨識能力: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); // Load and enhance image quality input.LoadImage("low-quality-scan.jpg"); input.Deskew(); // Correct image skew input.DeNoise(); // Remove background noise input.Binarize(); // Convert to black and white OcrResult result = ocr.ReadDocument(input); ``` ### 建立可搜尋的 PDFs 在處理掃描文件時,最有價值的功能之一是 [ 建立可搜尋的 PDF](https://ironsoftware.com/csharp/ocr/how-to/searchable-pdf/) 的能力。 這樣既能保持原始文件的外觀,又能增加文字層次: ```csharp using IronOcr; var ocr = new IronTesseract(); using var input = new OcrInput(); input.LoadPdf("scanned-document.pdf"); // Process and save as searchable PDF OcrResult result = ocr.ReadDocument(input); result.SaveAsSearchablePdf("searchable-output.pdf"); ``` ## 處理不同的文件類型 IronOCR 擅長處理商業環境中常見的各種文件類型。 無論您要處理的是發票、合約或歷史文件,這個資料庫都提供了從不同來源擷取資料的專門功能。 ### 處理傳統文件 許多組織都有舊格式的掃描文件檔案。 IronOCR 能有效率地處理這些工作,包括支援文件管理系統常用的 [ 多頁 TIFF 檔案](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multipage-tiff/)。 ### 語言支援 雖然本範例著重於英文文字,但 IronOCR 支援 [超過 125 種國際語言](https://ironsoftware.com/csharp/ocr/examples/intl-languages/)。 因此非常適合處理多語言文件或非英語語言的文件。 ## 文件掃描的最佳作法 在處理掃描文件時達到最佳效果: 1.**掃描品質**:使用最低 300 DPI 的解析度以獲得最佳效果 2.**檔案格式**:對於文字文件,TIFF 和 PNG 格式比 JPEG 更能保持品質 3.**預先處理**:根據您的文件條件套用適當的篩選條件 4.**效能**:對於大量的批次,請考慮使用 [多執行緒功能](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multithreading-for-speed/)。 ## 疑難排解常見問題 在處理掃描文件時,您可能會遇到各種挑戰。 以下是常見問題的解決方案: - **品質不佳的掃描**:在 OCR 處理前套用增強篩選器 - **斜體文件**:使用 `Deskew()` 方法來修正方向 - **混合內容**:如果文件同時包含文字和非文字元素,則處理特定區域 如需更詳細的指導,請參閱我們的 [ 全面的 C# OCR 教學](https://ironsoftware.com/csharp/ocr/tutorials/c-sharp-tesseract-ocr/),或查看 [ 簡單的 OCR 實例](https://ironsoftware.com/csharp/ocr/examples/simple-csharp-ocr-tesseract/),以快速上手。 ## 後續步驟 現在您已瞭解如何從掃描的文件中擷取文字,您可以探索更進階的功能,例如 [ 製作任何可搜尋的 PDF](https://ironsoftware.com/csharp/ocr/examples/make-pdf-searchable/) 或為 Web 應用程式處理 [ PDF 串流](https://ironsoftware.com/csharp/ocr/examples/ocr-for-pdf-stream/)。 IronOCR 的靈活性使其適用於從簡單的文件數位化到複雜的企業文件處理工作流程。
常見問題解答
如何使用 C# 從掃描的 PDF 中提取文字?
IronOCR 可讓您簡單地以 C# 從掃描的 PDF 中提取文字。使用 LoadPdf 方法匯入您掃描的 PDF,然後調用 ReadDocument 來擷取文字。例如: var text = new IronOcr.IronTesseract().ReadDocument(new IronOcr.OcrInput().LoadPdf("scanned.pdf")).Text; 這一行程式碼會載入您的 PDF 並擷取所有文字內容。
OCR 函式庫支援哪些檔案格式的文字擷取?
IronOCR 支援全面的 OCR 掃描文件格式。對於影像,它可處理 JPG、PNG、GIF、TIFF 和 BMP 格式。對於 PDF,它可以處理單頁和多頁文件。圖庫使用先進的 Tesseract 5 技術,確保所有支援格式的高準確性。
我需要為 OCR 功能安裝其他套件嗎?
是的,要使用 IronOCR 的完整 OCR 功能,除了 IronOCR 主庫之外,還需要安裝 IronOcr.Extensions.AdvancedScan 套件。此擴充套件提供增強的掃描功能,可處理已掃描的文件。
我可以從掃描的影像以及 PDF 擷取文字嗎?
是的,IronOCR 對掃描影像和 PDF 的處理同樣出色。對於影像檔案 (JPG、PNG、GIF、TIFF、BMP) 使用 LoadImage 方法,對於 PDF 文件則使用 LoadPdf 方法。ReadDocument 方法可與這兩種輸入類型搭配使用,以擷取文字內容。
OCR 如何協助處理不可搜尋的 PDF 文件?
IronOCR 透過使用 OCR 技術擷取文字,將不可搜尋、以圖片為基礎的 PDF 轉換為可搜尋的內容。這種轉換讓您更容易找到文件中的特定資訊,並大幅提升文件的可讀性,特別是對有視覺障礙的個人而言。
OCR 文字擷取的主要商業應用為何?
IronOCR 可讓企業從 PDF 中萃取關鍵資料進行分析和系統整合,簡化工作流程。它對於處理法律文件、研究論文和自動化資料輸入特別有用。設計師和行銷人員也可以擷取圖片,以便在各種專案中強化和重複使用。






