# Processus bloqués lors du chargement de formulaires PDF sur Linux
Sur Linux (par exemple, Debian avec .NET 8), `OcrInput.LoadPdf()` peut se bloquer indéfiniment lors du chargement de certains fichiers PDF contenant des champs de formulaire interactifs. L'appel ne revient jamais et le processus se bloque.
```txt
Process hangs at OcrInput.LoadPdf() and never proceeds.
```
La couche de formulaire interactif dans certains PDFs est le déclencheur. Le même fichier se charge correctement sur Windows, et d'autres PDF de formulaire peuvent aussi se charger correctement sur Linux, ce qui rend le problème incohérent et difficile à attraper avant qu'il ne se manifeste en production.
## Solution
Aplatissez le PDF avant de le passer à IronOCR. L'aplatissement convertit chaque champ de formulaire en contenu de page statique, supprimant la couche interactive responsable du blocage.
### 1. Aplatissez le PDF avec IronPDF
Chargez le fichier source, aplatissez-le et enregistrez une copie statique :
```csharp
using IronPdf;
var pdf = PdfDocument.FromFile("ocrpdfform.pdf");
pdf.Flatten();
pdf.SaveAs("flattened_ocrpdfform.pdf");
```
`Flatten()` supprime les champs de formulaire interactifs, laissant derrière un document simple qu'IronOCR peut ouvrir sans se bloquer.
### 2. Exécutez l'OCR sur le fichier aplati
Pointez `LoadPdf()` vers la copie aplatie, puis lisez comme d'habitude :
```csharp
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);
```
En plus de prévenir le blocage, l'aplatissement assure un comportement cohérent sur les plateformes, élimine les éléments interactifs dont l'OCR n'a pas besoin et réduit la complexité du fichier pour un traitement plus rapide.
Sur Linux (par exemple, Debian avec .NET 8), OcrInput.LoadPdf() peut se bloquer indéfiniment lors du chargement de certains fichiers PDF contenant des champs de formulaire interactifs. L'appel ne revient jamais et le processus se bloque.
Process hangs at OcrInput.LoadPdf() and never proceeds.
Process hangs at OcrInput.LoadPdf() and never proceeds.
Text
La couche de formulaire interactif dans certains PDFs est le déclencheur. Le même fichier se charge correctement sur Windows, et d'autres PDF de formulaire peuvent aussi se charger correctement sur Linux, ce qui rend le problème incohérent et difficile à attraper avant qu'il ne se manifeste en production.
Solution
Aplatissez le PDF avant de le passer à IronOCR. L'aplatissement convertit chaque champ de formulaire en contenu de page statique, supprimant la couche interactive responsable du blocage.
1. Aplatissez le PDF avec IronPDF
Chargez le fichier source, aplatissez-le et enregistrez une copie statique :
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");
C#
Flatten() supprime les champs de formulaire interactifs, laissant derrière un document simple qu'IronOCR peut ouvrir sans se bloquer.
2. Exécutez l'OCR sur le fichier aplati
Pointez LoadPdf() vers la copie aplatie, puis lisez comme d'habitude :
using var ocrInput = new OcrInput();ocrInput.LoadPdf("flattened_ocrpdfform.pdf"); // No longer stuckvar 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);
C#
En plus de prévenir le blocage, l'aplatissement assure un comportement cohérent sur les plateformes, élimine les éléments interactifs dont l'OCR n'a pas besoin et réduit la complexité du fichier pour un traitement plus rapide.
Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.