¿Qué es PDF?
Portable Document Format, estandarizado como ISO 32000, describe documentos de diseño fijo con independencia del software de aplicación, el hardware y los sistemas operativos. Un PDF puede contener texto, fuentes, gráficos, formularios, anotaciones y archivos integrados.
Cómo funciona PDF
PDF serializa un grafo de objetos orientado a páginas que contiene flujos de contenido, recursos, fuentes, imágenes, anotaciones y la estructura del documento. La información de referencias cruzadas permite a los lectores localizar objetos indirectos, mientras que las actualizaciones incrementales pueden añadir cambios sin reescribir los bytes anteriores. Una página puede combinar texto real y trazos vectoriales con contenido ráster escaneado, por lo que la similitud visual no implica que la extracción o la accesibilidad sean idénticas. Los pipelines de documentos eligen operaciones de renderizado, análisis, optimización, firma o archivo según las características reales y los objetivos de conformidad.
Datos clave
- Guardar un PDF de forma incremental añade los objetos modificados, una nueva sección de referencias cruzadas y un nuevo bloque final, y conserva todos los bytes anteriores en su lugar. La referencia de PDF señala que los cambios guardados pueden deshacerse eliminando las secciones añadidas y que los objetos eliminados permanecen en el archivo y solo se marcan como eliminados. Por tanto, el contenido eliminado u oculto en la última revisión aún puede recuperarse, a menos que el archivo se reescriba sin los objetos antiguos.
- Un PDF firmado solo puede modificarse mediante actualizaciones incrementales, porque alterar cualquier byte existente invalida sus firmas. Un paso de procesamiento que reescriba el archivo, como una recompresión u optimización, las invalidará; decide si las firmas deben conservarse antes de añadir un paso de ese tipo.
- La visualización y la extracción de texto utilizan datos diferentes. Un visor solo necesita glifos, mientras que la búsqueda, la copia y la indexación necesitan una correspondencia entre los códigos de caracteres y Unicode, que procede de un encoding de caracteres estándar, un CMap
ToUnicodeoActualText. Sin esa correspondencia, la página sigue viéndose correctamente, pero la extracción devuelve caracteres incorrectos o ausentes, y la integración de la fuente no cambia eso. La documentación de pdfminer.six propone una prueba rápida: copia el texto de un visor a un editor y, si el resultado es ilegible, una biblioteca de extracción no lo hará mejor. Una página escaneada no tiene ningún objeto de texto y necesita OCR. - PDF/A es una familia de perfiles ISO 19005, no una extensión de archivo. Las partes de 1 a 3 exigen que todas las fuentes estén integradas, que el color sea independiente del dispositivo y que los metadatos se basen en estándares, y prohíben el cifrado, el audio, el video y JavaScript, por lo que integrar las fuentes por sí solo no hace que un archivo sea conforme. Un archivo declara su parte y nivel en los metadatos XMP (
pdfaid:partypdfaid:conformance); confirmar esa declaración requiere un validador como veraPDF. El nivel B solo abarca la apariencia visual, por lo que un archivo de nivel B creado a partir de páginas escaneadas puede no tener texto extraíble. - La línea de encabezado
%PDF-no siempre indica la versión del archivo: desde PDF 1.4, una entradaVersionen el catálogo del documento puede prevalecer sobre ella, lo que permite aumentar la versión mediante una actualización incremental. ISO 32000-1 estandarizó PDF 1.7, e ISO 32000-2, publicada por primera vez en 2017 y revisada en 2020, define PDF 2.0.
Cuándo es importante PDF
Inspecciona el contenido real de un PDF antes de elegir pasos de generación de miniaturas, extracción, combinación u optimización. Las fuentes integradas, las funciones interactivas, el cifrado y las páginas escaneadas pueden limitar la compatibilidad o requerir un tratamiento especializado.
Cómo ayuda Transloadit con PDF
Los Robots de documentos de Transloadit reciben PDF como entrada o lo producen como salida: /document/thumbs renderiza páginas como imágenes, /document/extract devuelve texto seleccionable e imágenes ráster integradas, /document/ocr reconoce texto en documentos escaneados, /document/split y /document/merge extraen y concatenan páginas, /document/optimize reduce el tamaño del archivo y /document/convert produce PDF a partir de otros formatos de documento.
En su modo de texto nativo, /document/extract devuelve poco o ningún texto de los PDF escaneados, y sus modos OCR no pueden combinarse con una contraseña. /document/convert convierte archivos a PDF, no desde PDF. La documentación de los Robots no menciona la salida PDF/A ni la conservación de firmas, así que no des por hecho ninguna de las dos.
- Robot /document/thumbs
- Robot /document/extract
- Robot /document/ocr
- Robot /document/merge
- Robot /document/optimize (English)
- Robot /document/convert
Explora los formatos de archivo y las capacidades de compresión de Transloadit
Fuentes
- Referencia de Adobe PDF, sexta edición (PDF 1.7): estructura del archivo, actualizaciones incrementales, cifrado y extracción de contenido de texto
- Biblioteca del Congreso: PDF 2.0, ISO 32000-2 (2017, revisada en 2020)
- Biblioteca del Congreso: familia PDF/A, PDF para preservación a largo plazo
- veraPDF: validación de PDF/A y PDF/UA
- Preguntas frecuentes de pdfminer.six: por qué el texto extraído contiene identificadores de caracteres sin procesar