Plan de entrega de mejoras de HotPDF

Iniciado el 8 de octubre de 2026 sobre la versión 2.800.2; el objetivo de entrega continua sigue activo hasta que cada ítem de aceptación de abajo esté implementado y verificado

El objetivo posterior de finalización de capacidades restantes está activo; el checklist histórico no establece la finalización de la compatibilidad de rendering general, transporte FDF, CSS de rich text ni XFA dinámico

El trabajo completado exige APIs públicas funcionando, comprobaciones de aceptación no GUI con significado real, documentación canónica en inglés americano, metadatos de release sincronizados y un commit de release local

La compatibilidad se define por entradas soportadas explícitas y diagnósticos observables; un placeholder de interfaz, una implementación sin verificar o un rechazo de funcionalidad no soportada no completa la funcionalidad correspondiente

Checklist de entrega

Frente de trabajoCriterios de aceptaciónEstado
Paridad JSON y C ABIExportaciones estructuradas HTML/XHTML/XML/JSON y de tablas tipadas CSV/JSON, engines OCR externos, firma incremental y campos de firma existentes, comparación de documentos, descubrimiento de capacidades, cancelación, límites de recursos y publicación a prueba de fallosEn progreso: exportaciones estructuradas y de tablas tipadas implementadas; quedan OCR externo, firma incremental y comparación
Plantillas HTML de negocioImágenes y controles de formulario dentro de flex/grid, contenedores anidados, filas flex con wrapping, spans de columnas de grid, recursos font-face controlados y fixtures de regresión para facturas, reportes y contratos a dos columnasCompleto: layouts de negocio anidados, wrapping/spans, imágenes/formularios y fuentes controladas verificados en Win32/Win64
Procesamiento de documentos escaneadosOrientación de página completa, deskew a ángulos arbitrarios, limpieza de bordes/sombras, corrección de perspectiva acotada, mapeo de coordenadas invertible y un workflow de OCR hacia datos estructuradosPlanificado
Conversión de archivado PDF/AComposición opcional de apariencias visibles de anotaciones/widgets, retención de texto buscable, un perfil de conversión documentado que preserva texto/vector, validación, reporte explícito de pérdida y salida atómicaPlanificado
Comparación de contratosAlineación de párrafos, records de inserción/eliminación/reemplazo de palabras u oraciones con ambas posiciones de origen, exclusión de boilerplate configurable y salida de revisión en PDF anotado o HTMLCompleto: ediciones de contratos de ambos lados, movimientos, exclusiones y artifacts de revisión verificados en Delphi y FPC
Edición de párrafos acotadaReflow dentro de un rectángulo de página explícito, cambios de fuente y de ancho, reporte de colisiones con contenido adyacente, preview/commit/rollback y edición de texto cross-baseline y en Form soportadaPlanificado
Exportación de tablas XLSXXLSX sin dependencia de Office con números/fechas/monedas/porcentajes tipados, celdas combinadas, metadatos de página de origen, recursos acotados y salida a prueba de fallosCompleto: libros nativos, JSON y C ABI con Win32/Win64 y aceptación con lectores independientes
Perfiles de factura electrónicaRegistro versionado de reglas de perfil, dispatch correcto de Factur-X, recursos dedicados para los perfiles XRechnung y franceses, alcance de validación explícito y fixtures oficiales de aceptación válidos/inválidosCompleto: registro versionado, capas oficiales XRechnung y CTC francesas, y aceptación real con Saxon
Despliegue Linux headlessBuilds ELF Linux reales y aceptación no GUI para parseo, texto, formularios, seguridad/firmas y render soportado sin Windows ni un escritorio activoEn progreso: parseo portable Linux real, I/O de objetos, compresión, criptografía, writer y rutas de texto/fuentes; queda la integración completa de documento, formularios, firmas y render
Compatibilidad XFA dinámicaEventos condicionales con presupuesto, data binding explícito, presentación por instancia, integración de painter/accesibilidad del host y fixtures reproducibles de formularios dinámicosPlanificado
Reconocimiento de códigos de barrasMúltiples símbolos por raster, muestreo en perspectiva de Data Matrix, reconocimiento acotado, coordenadas de origen y fixtures de símbolos rotados/con perspectiva/dañadosEn progreso: aceptación de regresión multi-símbolo y de perspectiva completada; queda la integración

Evidencia de releases

La versión 2.801.0 agregó las operaciones de exportación estructurada y de tablas tipadas; las suites de operaciones de Win32 y Win64 pasan cada una 121 tests, incluyendo 30 casos nuevos de exportación, y lectores independientes de JSON/XML/HTML/CSV verifican el DLL real del ABI Win64 con callbacks parciales, fallo de presupuesto y cancelación de publicación

La versión 2.802.0 agregó la exportación XLSX nativa, por JSON y por C ABI; Win32 y Win64 pasan cada uno 134 casos de operaciones y de libros, mientras que la salida real del DLL pasa el CRC de ZIP y parseo XML independiente con valores tipados y selección de páginas de origen

La versión 2.803.0 agregó los registros explícitos de reglas de factura y la validación oficial XRechnung y CTC francesa; Win32 y Win64 pasan cada uno 17 casos, incluyendo muestras positivas y negativas reales de reglas nacionales, configuraciones inválidas del engine, rechazo de DTD y salida de proceso acotada

La versión 2.804.0 publicó el core portable de Linux con ocho grupos de regresión sobre FPC Linux nativo 3.2.2 y 3.3.1, checks de compilación idénticos a los de Windows y alias de tipos Delphi/C++Builder preservados; la aceptación completa de documentos, formularios, firmas y render en Linux sigue en progreso

La versión 2.805.0 completó el frente de plantillas HTML de negocio con 28 casos de regresión en Win32 y 28 en Win64, recargas reales de PDF, campos nativos, objetos de imagen, embedding controlado de fuentes y checks de fallback y de presupuesto de recursos

La versión 2.806.0 completó el frente de comparación de contratos con 10 casos Delphi en Win32 y 10 en Win64 más cinco grupos de aceptación FPC por plataforma, cubriendo ediciones de redacción reales multi-página, párrafos entre páginas, cláusulas duplicadas, salida de revisión Unicode, rechazo de origen desactualizado, presupuestos y cancelación

La versión 2.807.0 completó el frente de reconocimiento de códigos de barras con 99 checks en Win32 y 99 en Win64, incluyendo 18 checks nuevos de símbolos mezclados, perspectiva, símbolos dañados, preservación del origen, geometría, presupuesto y cancelación; los FPC de Windows en ambas plataformas compilan el escáner nativo y los helpers de geometría

La versión 2.808.0 agregó carga nativa headless de documentos classic-xref, recursos heredados y texto de Forms anidados, inspección y llenado de valores de AcroForm Unicode, y saves incrementales atómicos acotados; seis targets nativos de FPC Linux 3.2.2/3.3.1 y de FPC/Delphi Windows pasan 46 aserciones cada uno, mientras que las interfaces C++ generadas y los lectores independientes pypdf/MuPDF verifican este primer perfil de documentos

La versión 2.809.0 agregó Tesseract CLI/DLL y RapidOCR CLI/DLL a los jobs OCR de JSON y C ABI; Win32 y Win64 verifican cada uno 39 casos nuevos de operaciones y 134 casos existentes de operación/export, mientras que Tesseract real y lectores independientes de PDF verifican el texto buscable y los píxeles de escaneo sin cambios a través del DLL real del ABI Win64

La versión 2.810.0 completó el preprocesamiento de escaneos y el OCR estructurado con 16 pruebas Delphi en Win32 y 16 en Win64 y seis checks reales de FPC Windows por plataforma; Tesseract vivo verifica cuatro orientaciones y seis variantes raster corregidas incluido un escaneo de 37.5 grados, mientras se verifican la geometría hasta ±179.25 grados, los límites de trabajo/asignación, el overflow de la salida del proceso, la cancelación en vuelo, la preservación del origen y la salida semántica

La versión 2.811.0 agregó validación compartida de xref-streams y object-streams, precedencia de revisiones híbridas, tokens numéricos anchos exactos y round trips que preservan el origen para objetos comprimidos; la aceptación nativa de documentos/core de Linux y Windows y los lectores independientes verifican el perfil expandido, y 66 casos de regresión del parser por plataforma Delphi retienen los gates existentes de rendimiento

La versión 2.812.0 completó el workstream de archivado PDF/A; Delphi Win32 y Win64 pasan cada uno 24 casos de preservación y 47 casos raster existentes, las interfaces frescas de FPC Windows y C++Builder compilan, pypdf/MuPDF independientes verifican el contenido y los recursos originales, y tres artifacts generados de apariencias/OCR pasan veraPDF PDF/A-4 con cero reglas o checks fallidos

La versión 2.813.0 completó la edición acotada de párrafos con 20 casos Delphi por arquitectura y siete grupos de aceptación FPC por arquitectura, más comprobaciones independientes de texto/render sobre las cuatro salidas; las regresiones de guardados repetidos retienen las ediciones después de que el grafo se haya vaciado

La versión 2.814.0 agregó seguridad AES-256 al perfil nativo headless; dos toolchains reales de FPC Linux, dos targets de FPC Windows y dos targets de Delphi pasan cada uno 64 aserciones de baseline, 81 de provider y 82 de documentos cifrados, los headers públicos de C++Builder compilan, y lectores estrictos independientes validan 36 salidas cifradas y sus prefijos de origen preservados

La versión 2.815.0 completó el workstream del host-adapter de XFA dinámico a través del perfil documentado del helper de presentación de instancias; cada arquitectura de Delphi pasa 23 casos nuevos y 83 de compatibilidad, las fuentes FPC frescas y ambos targets de headers de C++Builder compilan, y lectores independientes pypdf/XML verifican los datos y las identidades persistidas

La versión 2.816.0 agregó CMS nativo en streaming con OpenSSL 3 y verificación exacta de firmas PDF; seis targets nativos de compiladores Linux/Windows pasan cada uno 40 aserciones de provider y 13 de documentos, los verificadores originales de Windows autentican las firmas generadas, ambos headers públicos de C++Builder compilan, y checks independientes de OpenSSL/pypdf/MuPDF verifican los fixtures reales de DER y PDF

La versión 2.817.0 completó la paridad JSON/C ABI: cada arquitectura pasa 34 aserciones nativas/FPC de firma, 516 aserciones reales de firma por DLL y 11 checks independientes de CMS; la comparación pasa 28 aserciones nativas/FPC y 82 reales de DLL por arquitectura más 123 checks independientes de JSON/HTML/PDF, y las regresiones existentes de operaciones, ABI y OCR siguen en verde

La versión 2.818.0 agregó publicación nativa headless de firmas PDF incrementales; cada uno de los seis targets de compiladores Linux/Windows pasa 45 aserciones de firma plain/CAdES y 31 cifradas, ambas interfaces de C++Builder compilan, y lectores independientes y OpenSSL verifican 54 PDFs reales y 60 firmas ByteRange sin debilitar los checks de firmas cifradas

La versión 2.819.0 agregó renderizado PNG nativo con Cairo/FreeType por CPU y advances canónicos de fuentes estándar; dos toolchains nativos de FPC Linux pasan cada uno 128 aserciones acotadas de renderizado y 946 aserciones independientes de píxeles/geometría pypdf/MuPDF, cuatro targets de compiladores de Windows se construyen desde fuentes frescas, ambos headers públicos de C++Builder compilan, y las regresiones de fuentes estándar coinciden con 1085 orígenes de caracteres independientes en 15 páginas reales

La versión 2.820.0 completó el workstream nativo de Linux con apariencias reales embebidas de widgets Unicode: cada toolchain de FPC Linux pasa 19 aserciones de metadatos y 58 de apariencias, cada uno de los cuatro targets de compiladores de Windows pasa 19 y 52, ambas interfaces de C++Builder compilan, y los lectores independientes validan 42 PDFs reales con 1294 aserciones incluyendo prefijos de origen originales, seguridad AES, datos exactos de fuentes/glifos/ToUnicode y fidelidad raster

Los once workstreams acotados originales tienen evidencia de versión publicada arriba; las capacidades más amplias solicitadas en el objetivo posterior de finalización siguen abiertas hasta que su implementación y la aceptación requerida estén completas

Finalización de capacidades activas

El plan de finalización registra los releases posteriores y el trabajo restante; las implementaciones candidatas y los resultados parciales de targets no establecen una funcionalidad publicada ni la finalización del objetivo

Entrega activaAceptación restante
Transporte FDF y de anotacionesConstruyan sobre el 2.973.0 publicado con grafos de anotaciones FDF binarios, estados de apariencia, recursos compartidos y reemplazo transaccional y el 2.974.0 con la eliminación transaccional de anotaciones; completen la eliminación del árbol de campos Widget, los archivos embebidos, cadenas de actions más amplias y más modelado de políticas de campos con verificación independiente de la salida
Rendering nativoConstruyan sobre el 2.972.0 publicado con apariencias predeterminadas de anotaciones y clipping de texto; completen fuentes variables no predeterminadas, más estados gráficos, combinaciones de fuentes y transformaciones, comparaciones independientes de geometría y raster, políticas de impresión y reconstrucción de fuentes de prueba
CSS y layout de rich textConstruyan sobre los style sheets, perfiles de medios, recursos externos y matemática numérica finita publicados; completen más propiedades, selectores y features de medios, tablas, imágenes y layout general
Runtime dinámico de XFAEdición general del DOM de template y formulario, remerge explícito, reglas de ocurrencia y binding, alias estables, medios externos y más consumidores con cancelación transaccional y verificación con lectores persistidos

La implementación y aceptación de release actuales de FPC exigen la versión 3.3.1 o posterior en cada plataforma y registran el build real del compilador; los resultados de compiladores antiguos de arriba retienen sus identidades históricas y no son gates de release actuales

Restricciones de ejecución

Trabajen directamente en el directorio canónico del proyecto, preserven las ediciones ajenas, ejecuten los checks no GUI con el lanzamiento del visor suprimido, hagan stage solo de los cambios de la tarea y nunca hagan push

Actualicen solo la documentación canónica en-us durante la implementación; la sincronización de traducciones es una tarea separada