Risoluzione dei problemi
Problemi comuni e soluzioni quando si lavora con Aspose.PDF FOSS per .NET.
Caricamento del documento
| Problema | Causa | Soluzione |
|---|
Document.Open genera un’eccezione su un PDF valido | Il file è protetto da password | Fornire la password nel costruttore |
| Memoria esaurita su PDF di grandi dimensioni | L’intero file caricato in un array di byte | Elaborare le pagine singolarmente o utilizzare lo streaming |
Pages[0] genera un errore di indice | Le pagine usano l’indicizzazione a partire da 1 | Usare Pages[1] per la prima pagina |
Annotazioni
| Problema | Causa | Soluzione |
|---|
| Annotazione non visibile dopo il salvataggio | Il rettangolo ha area zero o è fuori dai limiti della pagina | Verificare che le coordinate rientrino nella pagina MediaBox |
LinkAnnotation.Uri restituisce null | Il collegamento utilizza un’azione GoTo o JavaScript | Risolvi tramite PdfAction.Create e controlla ActionType |
Flatten() genera un’eccezione | Annotazione priva del riferimento /P (pagina) | Assicurati che l’annotazione sia stata aggiunta tramite Page.Annotations |
Estrazione del testo
| Problem | Cause | Solution |
|---|
| Il testo estratto è illeggibile | Codifica non standard o mappatura dei font CID | Verificare l’incorporamento dei font; i PDF scansionati potrebbero richiedere OCR |
| Nessun frammento di testo trovato | Il contenuto della pagina è un’immagine raster | Utilizzare OCR prima dell’estrazione del testo |
| La regex non restituisce corrispondenze | Il layout del testo PDF inserisce spazi | Utilizzare un pattern più permissivo o normalizzare gli spazi |
Rendering e Conversione
| Problema | Causa | Soluzione |
|---|
| L’immagine renderizzata è sfocata | Risoluzione troppo bassa | Aumentare DPI nel costruttore Resolution |
| Output HTML senza immagini | Percorsi delle immagini esterne non configurati | Usare HtmlSaveOptions con immagini incorporate |
| Conversione PDF/A rimuove le annotazioni | Il profilo di destinazione non consente le annotazioni | Usare PDF/A-2 o PDF/A-3 |
Campi modulo
| Problema | Causa | Soluzione |
|---|
| Il valore del campo è vuoto | Il campo non ha alcuna voce /V | Verifica che field.Value non sia nullo |
FillField non ha effetto | Mancata corrispondenza del nome del campo | Usa Form.FieldNames per elencare i nomi disponibili |
| ExportToJson produce output vuoto | Annotazione widget non correttamente convertita | Verifica che l’annotazione sia un WidgetAnnotation |
Suggerimenti generali
- Avvolgere sempre
Document in using per rilasciare i handle dei file. - Utilizzare
Document.Open(byte[]) per flussi di lavoro in memoria per evitare blocchi dei file. - Verificare
doc.Pages.Count prima di accedere alle pagine per indice. - Salvare il documento una sola volta dopo tutte le modifiche per ottenere le migliori prestazioni.
Vedi anche