在 IronOCR 中減少輸出 PDF 的檔案大小

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

如何在IronOCR中減小輸出PDF的文件大小?

IronOCR將自動放大被檢測為低質量的輸入 (低於150DPI) 以確保準確的讀取結果。

如果檢測到DPI低於150,TargetDPI (預設 225DPI) 定義了PDF的渲染DPI - 這與手動設置TargetDPI = 225\相同。

為了減少輸出文件的大小,你可以設置較低的TargetDPI,這樣會生成較小的PDF,但設置太低可能會影響OCR性能。一切需要平衡。

建議的值是96, 72, 48

// how to reduce and usage by by reducing DPI
    //Example 1
    using IronOcr;
    var Ocr = new IronTesseract();
    using (var Input = new OcrInput())
    {
        Input.TargetDPI = 96;    // DPI of output, default is 225
        Input.AddPdf("example.pdf", "password");
        var Result = Ocr.Read(Input);
        Console.WriteLine(Result.Text);
    }

    //Example 2
    var ocr = new IronTesseract();
    using (var ocrInput = new OcrInput())
    {
    ocrInput.AddPdf("img/Input.pdf", 72); //TargetDPI
    var ocrResult = ocr.Read(ocrInput);
    ocrResult.SaveAsSearchablePdf(@"Output.pdf");
    }
// how to reduce and usage by by reducing DPI
    //Example 1
    using IronOcr;
    var Ocr = new IronTesseract();
    using (var Input = new OcrInput())
    {
        Input.TargetDPI = 96;    // DPI of output, default is 225
        Input.AddPdf("example.pdf", "password");
        var Result = Ocr.Read(Input);
        Console.WriteLine(Result.Text);
    }

    //Example 2
    var ocr = new IronTesseract();
    using (var ocrInput = new OcrInput())
    {
    ocrInput.AddPdf("img/Input.pdf", 72); //TargetDPI
    var ocrResult = ocr.Read(ocrInput);
    ocrResult.SaveAsSearchablePdf(@"Output.pdf");
    }
' how to reduce and usage by by reducing DPI
	'Example 1
	Imports IronOcr
	Private Ocr = New IronTesseract()
	Using Input = New OcrInput()
		Input.TargetDPI = 96 ' DPI of output, default is 225
		Input.AddPdf("example.pdf", "password")
		Dim Result = Ocr.Read(Input)
		Console.WriteLine(Result.Text)
	End Using

	'Example 2
	Dim ocr = New IronTesseract()
	Using ocrInput As New OcrInput()
	ocrInput.AddPdf("img/Input.pdf", 72) 'TargetDPI
	Dim ocrResult = ocr.Read(ocrInput)
	ocrResult.SaveAsSearchablePdf("Output.pdf")
	End Using
VB   C#

若要禁用自動放大功能,請使用 TargetDPI = 0。這將忽略 TargetDPI 值,並按原樣讀取輸入文件。

請參閱 API 以獲取更多信息: https://ironsoftware.com/csharp/ocr/object-reference/api/IronOcr.OcrInput.html?q=targetdpi#IronOcr_OcrInput_TargetDPI