|
HotPDF es una biblioteca de componentes VCL para Delphi y C++Builder que genera documentos PDF sin requerir una DLL PDF externa. El punto de entrada principal es la clase THotPDF, que gestiona la creación de documentos, el acceso a páginas, la compresión, los metadatos, la seguridad y los flujos de salida
Los flujos de trabajo típicos incluyen dibujar texto y gráficos vectoriales, incrustar contenido bitmap y metafile, importar imágenes TIFF y JPEG2000, adjuntar archivos, configurar preferencias del visor, proteger el documento final con contraseñas y permisos, y cargar PDFs cifrados con Standard RC4-40 / RC4-128 usando una contraseña para generar una salida de documento cargado sin cifrar
Aspectos destacados actuales
- Expanded image support for TIFF, JPEG2000, JBIG2, WMF, and EMF workflows.
- Built-in LZW support, zlib-ng based Flate compression in zlib-compatible mode, 64-bit zlib-ng runtime SIMD dispatch, and libjpeg-turbo 3.1.90 backed standard JPEG handling with NASM SIMD object acceleration.
- Shared C runtime bridging in HPDFCLibs.pas for Win32 bcc32c/bcc32 OMF objects, Win64 COFF64 objects, and zlib-ng Win64x COFF objects, including 32-byte aligned C allocation.
- Expanded viewer and print preferences, including document direction, print scaling, duplex mode, page boundaries, and initial zoom behavior.
- Improved font embedding, Unicode text output, and right-to-left text rendering.
- La salida PDF/A Level A habilita los fundamentos de Tagged PDF para la conformidad de archivado, manteniendo la identificación PDF/UA-1 como una opción explícita mediante PDFUACompliance
- Los flujos PDF/A-1, PDF/A-2, PDF/A-3, PDF/X-1a, PDF/X-3, PDF/X-4 y PDF/UA-1 incluyen controles de producción conscientes del perfil, generación de metadatos, soporte de OutputIntent cuando corresponde y cobertura smoke para PDF/A-2A / PDF/A-3A validada con veraPDF
- Updated demo applications for ViewerPreferences and embedded-font validation.
Posicionamiento de conformidad con estándares
- El soporte de PDF/A se expone mediante PDFACompliance. HotPDF proporciona los metadatos PDF/A, las restricciones de perfil, la exigencia de incrustación de fuentes, los hooks OutputIntent y la cobertura smoke de validación; la aplicación sigue aportando perfiles ICC válidos, valores de título/idioma, fuentes y contenido apropiado para el perfil
- El soporte de PDF/UA se expone mediante PDFUACompliance y las API de Tagged PDF. HotPDF proporciona el envoltorio a nivel de documento, la maquinaria del árbol de estructura, el mapeo de roles, los helpers de contenido marcado, el cableado ParentTree y los helpers de texto alternativo / ActualText; la aplicación sigue siendo responsable de la estructura semántica real y del orden de lectura
- PDF/A Level A y PDF/UA-1 son declaraciones separadas. Level A habilita la base de Tagged PDF necesaria para la conformidad de archivado, mientras que la identidad XMP de PDF/UA-1 se emite solo cuando PDFUACompliance se habilita explícitamente
Notas de compilación y plataforma
- Win32 builds link bcc32c-generated zlib-ng OMF objects and bcc32-generated JPEG/TIFF OMF objects stored in Lib\thirdparty\Win32.
- Win64 builds link COFF64 objects stored in Lib\thirdparty\Win64; the zlib-ng backend currently links the bcc64x-generated COFF objects stored in Lib\thirdparty\Win64x.
- Native object rebuild validation passes from clean outputs: 206 Win32 objects, 205 Win64x objects, and 206 MSVC Win64 objects.
- La unidad HPDFOpenJpeg.pas funciona actualmente como capa de interfaz y punto de extensión; no debe tratarse como un binding nativo completo del runtime OpenJPEG
Diagnósticos
- General library diagnostics are controlled by withDEBUG in HotPDF.inc, which writes HotPDF-Debug.log when enabled.
- El rastreo de combinación de contenido de página se controla por separado mediante PAGECONTENT_DEBUG_FILE, que escribe PageContent_Debug.txt solo cuando se habilita explícitamente
Validación automatizada
- La suite de regresión Delphi DUnitX supera 20 pruebas en Win32 y 20 pruebas en Win64 mediante Tests\Delphi\Run-HotPDFDelphiTests.bat
- La suite de regresión C++Builder GoogleTest supera 17 pruebas en Win32 y 17 pruebas en Win64x mediante Tests\C++Builder\Run-HotPDFCBuilderTests.bat
- La cobertura automatizada ejercita metadatos generados, texto Unicode y RTL, anotaciones, adjuntos, colocación de imágenes JPEG estándar, importación de imágenes y TIFF, compresión zlib-ng Flate, salida de códigos de barras, salida a flujos de memoria, configuración de página, cifrado, hipervínculos, párrafos, flujos de copiar / combinar / editar, tablas, gráficos, salida numérica, metarchivos e informes estructurados
HotPDF es adecuado para generación de informes, documentación técnica, flujos de imágenes y otras aplicaciones que necesitan control programático directo sobre la salida PDF
|