Solução de problemas
Problemas e soluções comuns ao trabalhar com Aspose.PDF FOSS para .NET.
Carregamento de documentos
| O problema é que… | Causa da morte | Solução |
|---|
Document.Open lança um PDF válido | O ficheiro está protegido por senha . | Fornecer a senha no constructor |
| Sem memória em grandes PDFs | Arquivo inteiro carregado em array de bytes | Processar páginas individualmente ou usar streaming |
Pages[0] Arranca erro de índice | Páginas usam indexação baseada em 1 | Utilização: Pages[1] para a primeira página: |
Anotativas
| O problema é que… | Causa da morte | Solução |
|---|
| Anotativa não visível após a salvação | Rectângulo tem área zero ou está fora dos limites da página | Verificar que as coordenadas estão dentro da página MediaBox |
LinkAnnotation.Uri retorna null | Link usa uma ação GoTo ou JavaScript | Resolver via PdfAction.Create e verifique ActionType |
Flatten() lança | Falta de anotação /P (página) referência | Certificar-se de que a anotação foi adicionada através do Page.Annotations |
Extração de texto
| O problema é que… | Causa da morte | Solução |
|---|
| Texto extraído é distorcido. | Código não padrão ou mapeamento de fontes CID | Verifique a incorporação de fontes; os PDFs digitalizados podem precisar de OCR |
| Não encontrou fragmentos de texto. | O conteúdo da página é uma imagem raster. | Usar o OCR antes da extração de texto |
| Regex não retorna correspondências | Colocação de espaço em formato PDF | Use um padrão mais solto ou normalize o espaço branco |
Renda e conversão
| O problema é que… | Causa da morte | Solução |
|---|
| Imagem renderada é turva | Resolução demasiado baixa | Aumentar o DPI em Resolution constructor |
| Imagens em saída HTML ausentes | Caminhos de imagem externos não configurados | Utilização: HtmlSaveOptions Com imagens incorporadas |
| A conversão PDF/A remove anotações | Perfil de destino não permite anotações | Utilize o PDF/A-2 ou o pdf/ A-3 |
Campos de formulário
| O problema é que… | Causa da morte | Solução |
|---|
| Valor do campo vazio | O campo não tem /V entrada | Verificação field.Value não é nulo. |
FillField não tem efeito. | Desconcordância do nome de campo | Utilização: Form.FieldNames Lista de nomes disponíveis |
| ExportToJson produz saída vazia | Anotativa de widget não corretamente lançada | Verifique se a anotação é uma WidgetAnnotation |
Dicas gerais
- Sempre enrolar .
Document em: using para liberar os arquivos. - Utilização:
Document.Open(byte[]) para fluxos de trabalho em memória, a fim de evitar bloqueios de ficheiros. - Verificação
doc.Pages.Count antes de aceder às páginas por índice. - Salve o documento uma vez após todas as modificações para obter melhor desempenho.
Ver também: