如何在 C# 中將結果儲存為可搜尋的 PDF

How to Save Results as a Searchable PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

可搜尋的 PDF,通常稱為 OCR(光學字符識別)PDF,是一種包含掃描圖像和機器可讀文本的 PDF 文件。 這些 PDF 是通過對掃描紙質文件或圖像進行 OCR,識別圖像中的文本並將其轉換為可選擇和可搜尋的文本來創建的。

IronOCR 提供了一種解決方案,可以對文件進行光學字符識別並將結果導出為可搜尋的 PDF。 它支持將可搜尋的 PDF 導出為文件、字節和流。

as-heading:2 (快速入門:一行導出可搜尋的 PDF)

設置 RenderSearchablePdf = true,在您的輸入上運行 Read(...),並調用 SaveAsSearchablePdf(...)——這就是使用 IronOCR 生成完全可搜尋的 PDF 所需的全部。

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. Copy and run this code snippet.

    new IronOcr.IronTesseract { Configuration = { RenderSearchablePdf = true } } .Read(new IronOcr.OcrImageInput("file.jpg")).SaveAsSearchablePdf("searchable.pdf");
  3. Deploy to test on your live environment

    Start using IronOCR in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

最小工作流程(5 步)

  1. 下載 C# 庫以將結果儲存為可搜尋的 PDF
  2. 準備圖像和 PDF 文件用於 OCR
  3. 設置 RenderSearchablePdf 屬性為 true
  4. 利用 SaveAsSearchablePdf 方法輸出可搜尋的 PDF 文件
  5. 將可搜尋的 PDF 導出為字節和字符串


導出為可搜尋的 PDF 範例

以下是使用 IronOCR 將結果導出為可搜尋的 PDF 的方法。 您必須首先將 Configuration.RenderSearchablePdf 屬性設置為 true 。 從 Read 方法獲取 OCR 結果對象後,通過指定輸出文件路徑使用 SaveAsSearchablePdf 方法。 下面的代碼顯示了使用一個範例 TIFF 文件。

:path=/static-assets/ocr/content-code-examples/how-to/searchable-pdf-searchable-pdf.cs
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Enable render as searchable PDF
ocrTesseract.Configuration.RenderSearchablePdf = true;

// Add image
using var imageInput = new OcrImageInput("Potter.tiff");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);

// Export as searchable PDF
ocrResult.SaveAsSearchablePdf("searchablePdf.pdf");
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Enable render as searchable PDF
ocrTesseract.Configuration.RenderSearchablePdf = True

' Add image
Dim imageInput = New OcrImageInput("Potter.tiff")
' Perform OCR
Dim ocrResult As OcrResult = ocrTesseract.Read(imageInput)

' Export as searchable PDF
ocrResult.SaveAsSearchablePdf("searchablePdf.pdf")
$vbLabelText   $csharpLabel

下面是範例 TIFF 和嵌入的可搜尋 PDF 的截圖。 嘗試在 PDF 中選擇文本以確認其可搜尋性。 能夠選擇文本也意味著可以在 PDF 檢視器中搜尋文本。

請注意IronOCR 使用特定字體在圖像文件上覆蓋文本,這可能導致文本大小出現一些偏差。

class="competitors-section__wrapper-even-1">
TIFF file

導出為應用過濾器的可搜尋 PDF

SaveAsSearchablePdf 還接收一個布爾值作為第二個參數,允許您選擇是否對可搜尋的 PDF 應用過濾器,從而為開發人員提供靈活性。

下面是一個範例,將圖像轉為灰階並將 true 作為第二個參數保存帶有過濾器的 PDF。

:path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-searchable-pdf.cs
using IronOcr;

var ocr = new IronTesseract();
var ocrInput = new OcrInput();

// Load a PDF file
ocrInput.LoadPdf("invoice.pdf");

// Apply gray scale filter
ocrInput.ToGrayScale();
OcrResult result = ocr.Read(ocrInput);

// Save the result as a searchable PDF with filters applied
result.SaveAsSearchablePdf("outputGrayscale.pdf", true);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

將可搜尋的 PDF 作為字節和流

可搜尋的 PDF 的輸出也可以使用 SaveAsSearchablePdfBytesSaveAsSearchablePdfStream 方法作為字節或流來處理。 下面的代碼範例顯示了如何利用這些方法。

:path=/static-assets/ocr/content-code-examples/how-to/searchable-pdf-searchable-pdf-byte-stream.cs
// Export searchable PDF byte
byte[] pdfByte = ocrResult.SaveAsSearchablePdfBytes();

// Export searchable PDF stream
Stream pdfStream = ocrResult.SaveAsSearchablePdfStream();
' Export searchable PDF byte
Dim pdfByte() As Byte = ocrResult.SaveAsSearchablePdfBytes()

' Export searchable PDF stream
Dim pdfStream As Stream = ocrResult.SaveAsSearchablePdfStream()
$vbLabelText   $csharpLabel

常見問題解答

什麼是可搜尋的PDF?

可搜尋的 PDF 文件是將掃描影像與機器可讀文字結合的文檔,它是透過對掃描文件或影像執行 OCR 而創建的,允許使用者選擇和搜尋文件中的文字。

如何使用 C# 將掃描文件轉換為可搜尋的 PDF?

若要在 C# 中將掃描文件轉換為可搜尋的 PDF,請使用 IronOCR,將Configuration.RenderSearchablePdf屬性設為 true,使用Read方法執行 OCR,然後使用SaveAsSearchablePdf儲存輸出。

我可以將可搜尋的PDF匯出為位元組或流嗎?

是的,IronOCR 允許使用SaveAsSearchablePdfBytes將可搜尋的 PDF 匯出為位元組,並使用SaveAsSearchablePdfStream將 PDF 匯出為串流。

如何處理用於 OCR 處理的不同文件格式?

IronOCR 支援多種文件格式,例如 TIFF,用於 OCR 處理,從而可以從這些格式建立可搜尋的 PDF。

是否可以使用 OCR 技術建立可搜尋 PDF 文件,並對其進行文字選擇和搜尋?

是的,使用 IronOCR 技術建立的可搜尋 PDF 允許在 PDF 檢視器中進行文字選擇和搜尋。

使用 OCR 建立可搜尋 PDF 需要哪些步驟?

這些步驟包括下載 IronOCR C# 庫,準備要進行 OCR 的文檔,將RenderSearchablePdf屬性設為 true,並使用SaveAsSearchablePdf方法儲存文件。

如何確保我的PDF文件中的文字可搜尋?

使用 IronOCR 對影像執行 OCR 操作,並將RenderSearchablePdf屬性設為 true,然後再儲存文檔,以確保文字可搜尋。

IronOCR在可搜尋PDF的疊加文字中是否使用特定字體?

是的,IronOCR 使用特定的字體來在圖像檔案上疊加文本,這可能會導致文字大小出現一些差異。

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 18

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 18
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 38

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 38
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 48

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 48
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

審核人

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 70

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 70
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 84

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 84
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 85

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 85
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

準備好開始了嗎?
Nuget 下載 5,044,537 | 版本: 2025.11 剛剛發布