Solución de errores de análisis de PDF en IronPDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

Al intentar analizar un documento PDF utilizando IronPDF, podría encontrar la siguiente excepción:

Unhandled exception. System.IO.IOException: PDF can not be opened as a PDF. May be an incorrect file type or a password is required.
Please check file for corruption or validity by a 3rd party at: https://www.pdf-online.com/osa/validate.aspx

Este error típicamente ocurre al cargar un documento PDF en un objeto PdfDocument usando el siguiente código:

// Attempt to load a PDF document from a file
var pdf = PdfDocument.FromFile("Test.pdf");
// Attempt to load a PDF document from a file
var pdf = PdfDocument.FromFile("Test.pdf");
' Attempt to load a PDF document from a file
Dim pdf = PdfDocument.FromFile("Test.pdf")
$vbLabelText   $csharpLabel

Para desarrolladores de facturación electrónica española: Este error puede aparecer al intentar procesar PDFs generados externamente — por ejemplo, al re-procesar PDFs representativos de facturas VERI*FACTU recibidas de otros sistemas, o al importar PDFs de facturas Facturae para añadirles firmas digitales o modificarles metadatos. Los PDFs generados por sistemas de terceros para TicketBAI (Bizkaia, Gipuzkoa, Araba) pueden ocasionalmente estar protegidos con contraseña de propietario, lo que también desencadena este error.

Posibles causas

  1. PDF protegido con contraseña
  • Contraseña de propietario: La razón más común para esta excepción es que el PDF está protegido por una contraseña de propietario. Cuando un PDF tiene una contraseña de propietario, restringe ciertas acciones, como editar o copiar. Para cargar dicho documento, debe proporcionar la contraseña.
  1. PDF corrupto
  • El archivo PDF puede estar corrupto o no ser un formato PDF válido. Un archivo corrupto puede provocar que IronPDF falle durante el análisis.

Soluciones

  1. Manejo de PDFs protegidos con contraseña

Si conoces la contraseña del PDF, puedes pasarla al método PdfDocument.FromFile():

// Load a password-protected PDF by specifying the owner password
var pdf = PdfDocument.FromFile("test.pdf", "ownerpassword");
// Load a password-protected PDF by specifying the owner password
var pdf = PdfDocument.FromFile("test.pdf", "ownerpassword");
' Load a password-protected PDF by specifying the owner password
Dim pdf = PdfDocument.FromFile("test.pdf", "ownerpassword")
$vbLabelText   $csharpLabel

También puede verificar si el archivo está protegido con contraseña comprobando sus propiedades en Adobe Acrobat. Para más información sobre cómo identificar el estado de seguridad de un PDF, consulte este artículo.

  1. Manejo de PDFs corruptos

Para verificar si el archivo PDF está corrupto, use una herramienta de validación de terceros. Si el archivo está corrupto, IronPDF no podrá analizarlo.

Contexto para pipelines de procesamiento de PDFs en facturación española

En flujos de procesamiento de documentos dentro de sistemas de facturación electrónica española:

  • Facturae y FACe: Si tu pipeline descarga PDFs de FACe para reprocesarlos (añadir sellos de tiempo, extraer datos), asegúrate de que los PDFs no tengan contraseña de propietario establecida por el sistema emisor antes de pasarlos a IronPDF.
  • VERI*FACTU: Los PDFs representativos generados por software certificado VERI*FACTU de terceros pueden incluir protección de solo lectura. Si necesitas procesarlos con IronPDF (por ejemplo, para añadir páginas o combinarlos), necesitarás la contraseña de propietario del sistema generador.
  • Procesamiento bajo LOPDGDD: Al procesar PDFs que contienen datos personales fiscales bajo LOPDGDD, asegúrate de que las contraseñas de propietario se gestionen de forma segura y no se almacenen en texto plano en la configuración del sistema.

Si estos pasos de solución de problemas no resuelven el problema, por favor envíe una Solicitud de Soporte de Ingeniería para recibir asistencia adicional de nuestros ingenieros de soporte.

Preguntas frecuentes sobre análisis de PDF en España

*¿Por qué IronPDF no puede abrir un PDF representativo VERIFACTU generado por otro sistema?*
El PDF representativo puede estar protegido con contraseña de propietario por el software generador certificado bajo VERI\
FACTU. Si necesitas procesarlo con IronPDF, contacta al proveedor del software para obtener la contraseña de propietario, o verifica si el PDF puede ser exportado sin protección desde el sistema de origen.

¿Pueden los PDFs Facturae recibidos de FACe estar dañados al descargarse?
En casos raros, los PDFs descargados de FACe pueden estar corruptos si hay un problema durante la transmisión. Valida el archivo con la herramienta de validación de PDF antes de concluir que es un error de IronPDF. También verifica que el fichero descargado es realmente un PDF y no un XML Facturae renombrado, que es un error frecuente de integración con la AEAT.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Nuget Descargas 19,014,616 | Versión: 2026.5 just released
Still Scrolling Icon

¿Aún desplazándote?

¿Quieres una prueba rápida? PM > Install-Package IronPdf
ejecutar una muestra Mira cómo tu HTML se convierte en PDF.