IRONSOFTWAREHOME

Zawieszone procesy ładujące formularze PDF na Linux

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

Na Linux (na przykład Debian z .NET 8), OcrInput.LoadPdf() może zawiesić się bez końca podczas ładowania niektórych plików PDF, które zawierają interaktywne pola formularzy. Żądanie nigdy nie zwraca odpowiedzi i proces staje.

Process hangs at OcrInput.LoadPdf() and never proceeds.
Text

Warstwa interaktywnego formularza w niektórych PDF jest wyzwalaczem. Plik ten samodzielnie ładowany jest poprawnie na Windows, a inne formularze PDF mogą również zostać załadowane poprawnie na Linux, co sprawia, że problem jest niekonsekwentny i trudny do uchwycenia, zanim pojawi się w produkcji.

Rozwiązanie

Spłasz PDF przed przekazaniem go do IronOCR. Spłaszczenie konwertuje każde pole formularza do statycznej zawartości strony, usuwając interaktywną warstwę odpowiedzialną za wieszanie.

1. Spłaszcz PDF za pomocą IronPDF

Załaduj plik źródłowy, spłaszcz go i zapisz statyczną kopię:

using IronPdf;

var pdf = PdfDocument.FromFile("ocrpdfform.pdf");
pdf.Flatten();
pdf.SaveAs("flattened_ocrpdfform.pdf");
C#

Flatten() usuwna interaktywne pola formularzy, pozostawiając pusty dokument, który IronOCR może otworzyć bez zawieszania się.

2. Uruchom OCR na spłaszczonym pliku

Skieruj LoadPdf() na spłaszczoną kopię, a następnie odczytaj jak zwykle:

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);
C#

Oprócz zapobiegania zawieszaniu, spłaszczenie zapewnia spójne zachowanie na różnych platformach, usuwa interaktywne elementy, których OCR nie potrzebuje, i redukuje złożoność pliku, przyspieszając jego przetwarzanie.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 6,236,385Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i szukaj „IronOCR”
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

lub pobierz Instalator Windows tutaj.

  1. Pobierz i rozpakuj IronOCR do lokalizacji, takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań Visual Studio kliknij prawym przyciskiem myszy Odwołania. Wybierz Przeglądaj, „IronOCR.dll”

Licencje od 749 USD

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Otrzymaj swoją Konsultację Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta