Linux'ta PDF Formları Yüklerken Takılıp Kalan İşlemler
Linux üzerinde (örneğin, .NET 8 ile Debian) OcrInput.LoadPdf(), etkileşimli form alanları içeren belirli PDF dosyalarını yüklerken süresiz olarak askıda kalabilir. Çağrı asla geri döndürülemiyor ve işlem tıkanıyor.
Process hangs at OcrInput.LoadPdf() and never proceeds.
Bazı PDF'lerdeki etkileşimli form katmanı tetikleyicidir. Aynı dosya Windows'ta doğru bir şekilde yüklenir ve diğer form PDF'leri Linux'ta da doğru yüklenebilir, bu da sorunu düzensiz ve üretime girmeden önce yakalamayı zor hale getirir.
Çözüm
IronOCR'ye iletmeden önce PDF'yi düzleştirin. Düzleştirme, her form alanını statik sayfa içeriğine dönüştürerek, takılmaya neden olan etkileşimli katmanı kaldırır.
1. IronPDF ile PDF'yi Düzleştirin
Kaynak dosyayı yükleyin, düzleştirin ve statik bir kopya kaydedin:
using IronPdf;
var pdf = PdfDocument.FromFile("ocrpdfform.pdf");
pdf.Flatten();
pdf.SaveAs("flattened_ocrpdfform.pdf");
using IronPdf;
var pdf = PdfDocument.FromFile("ocrpdfform.pdf");
pdf.Flatten();
pdf.SaveAs("flattened_ocrpdfform.pdf");
Imports IronPdf
Dim pdf = PdfDocument.FromFile("ocrpdfform.pdf")
pdf.Flatten()
pdf.SaveAs("flattened_ocrpdfform.pdf")
Flatten() etkileşimli form alanlarını çıkarır ve geriye IronOCR'nin takılmadan açabileceği düz bir belge bırakır.
2. Düzleştirilmiş Dosyada OCR Çalıştırın
Düz kopyayı LoadPdf() noktasına yönlendirin, ardından her zamanki gibi okuyun:
using var ocrInput = new OcrInput();
ocrInput.LoadPdf("flattened_ocrpdfform.pdf"); // No longer stuck
var ocr = new IronTesseract();
var result = ocr.Read(ocrInput);
Console.WriteLine(result.Text);
using var ocrInput = new OcrInput();
ocrInput.LoadPdf("flattened_ocrpdfform.pdf"); // No longer stuck
var ocr = new IronTesseract();
var result = ocr.Read(ocrInput);
Console.WriteLine(result.Text);
Imports IronTesseract
Using ocrInput As New OcrInput()
ocrInput.LoadPdf("flattened_ocrpdfform.pdf") ' No longer stuck
Dim ocr As New IronTesseract()
Dim result = ocr.Read(ocrInput)
Console.WriteLine(result.Text)
End Using
Tutulmayı önlemenin ötesinde, düzleştirme platformlar arası tutarlı davranış sağlar, OCR'nin gerek duymadığı etkileşimli unsurları kaldırır ve daha hızlı işlem için dosya karmaşıklığını azaltır.

