Su pipeline de PDF funciona con wkhtmltopdf, y funcionó bien durante años — hasta que el proyecto fue archivado. El repositorio pasó a ser de solo lectura el 2 de enero de 2023, así que ya no llegan más parches de seguridad, y el envejecido motor WebKit que utiliza renderiza el CSS moderno (flexbox, grid, propiedades personalizadas) de forma impredecible. Si sus informes ahora salen desalineados, o ya no puede justificar el uso de un binario sin mantenimiento en un servidor de producción, necesita un reemplazo con soporte. En Windows, ese reemplazo es Total HTML Converter X.
Respuesta rápida: Para HTML simple y estático, wkhtmltopdf todavía funciona y sigue siendo gratis, pero su proyecto está archivado — sin parches de seguridad, y el CSS moderno se renderiza de forma impredecible. Para producción con mantenimiento en servidores Windows, Total HTML Converter X ofrece renderizado de CSS actualizado, conversión de URLs en vivo y archivos a PDF, DOC, TIFF y JPEG, una línea de comandos silenciosa, y una API COM/ActiveX invocable desde ASP, PHP y .NET.
| Total HTML Converter X | wkhtmltopdf | |
|---|---|---|
| Mantenimiento activo | Sí — producto comercial con actualizaciones continuas | No — repositorio archivado y de solo lectura desde el 2 de enero de 2023 |
| Motor de renderizado | Motor actual con soporte completo de CSS 1/2, saltos de página, ajuste al ancho, además de un motor de renderizado Chrome opcional | Compilación WebKit envejecida; el CSS moderno (flexbox, grid) a menudo se renderiza incorrectamente, sin más correcciones |
| Manejo de JavaScript | Sí — mediante el motor de renderizado Chrome (-engine chrome) | Limitado al motor WebKit congelado |
| Entrada de origen | Archivos HTML/MHT locales y URLs en vivo, por lotes | Archivos locales y URLs |
| Formatos de salida | PDF, DOC, RTF, XLS, TIFF, JPG, PNG, TXT | Solo PDF e imagen (PNG, JPG) |
| Línea de comandos | Sí — binario silencioso, sin GUI, sin cuadros de diálogo, sin ventanas emergentes | Sí — herramienta de línea de comandos |
| API de servidor | ActiveX/COM invocable desde ASP, PHP, .NET, Python, Ruby, Java | Bindings y wrappers de terceros, mantenidos por la comunidad |
| Seguridad de PDF | Firmas digitales (X.509 PFX), cifrado AES, contraseñas, indicadores de permisos | Básica; sin firma |
| Licencia | Comercial, licencia de pago único desde $750, prueba gratuita de 30 días | Gratis, código abierto |
| Sistema operativo | Windows 7/8/10/11 y Windows Server (IIS, Docker, Citrix, Wine) | Windows, Linux, macOS |
| Soporte | Soporte de desarrollador de CoolUtils | Solo comunidad; proyecto archivado |
Hay que reconocer sus méritos: wkhtmltopdf se ganó su lugar. Es gratuito y de código abierto, se ejecuta con un solo comando, y se integra sin problemas en cualquier lenguaje capaz de invocar un proceso externo. Durante una década fue la respuesta por defecto a la pregunta cómo renderizar este HTML a PDF en un servidor, y su base instalada es enorme — incontables pipelines de facturación, informes y exportación todavía lo invocan cada día. Para HTML simple y estático — una tabla, un recibo con estilo, un informe sencillo — todavía produce un buen PDF sin coste alguno.
Si sus plantillas son simples e invariables, y acepta ejecutar un binario archivado, wkhtmltopdf no está roto. El problema es todo lo que cambió después de que dejara de mantenerse: CSS más reciente, TLS más reciente, expectativas de seguridad más recientes.
En un servidor Windows, Total HTML Converter X es el reemplazo directo más cercano: mantiene el flujo de línea de comandos que ya tiene programado, añade un motor de renderizado con mantenimiento, y extiende la salida más allá del PDF. Reemplaza una llamada CLI por otra y gana firma digital, cifrado y formatos adicionales. Si trabaja en Linux o macOS, Total HTML Converter X no le sirve — es exclusivo de Windows — y ahí el camino con mantenimiento es Chrome o Chromium sin interfaz, directamente o mediante un wrapper.
Hay dos formas: invocar el binario de línea de comandos desde un proceso externo, o llamar al objeto ActiveX/COM dentro del mismo proceso. Invocar un proceso externo es el cambio más pequeño respecto a un pipeline de wkhtmltopdf — solo cambia el ejecutable y la sintaxis de los parámetros:
<?php
// Convertir un archivo HTML local a PDF desde PHP en Windows
exec('HtmlConverter.exe C:\www\invoice.html C:\pdf\invoice.pdf -c pdf -log C:\log\html.txt');
?>
El parámetro -c pdf define el formato de destino; añada -combine para fusionar varios archivos en un solo PDF, o -pfxfile y -pfxpass para firmar el resultado. Como el binario se ejecuta en silencio, ningún cuadro de diálogo bloquea la solicitud web. Desde ASP clásico o .NET puede, en cambio, crear el objeto ActiveX/COM incluido y ejecutar la misma conversión dentro del mismo proceso, sin lanzar un proceso hijo por cada página.
Sí — indique al conversor una URL en lugar de una ruta de archivo y este obtiene y renderiza la página en vivo:
HtmlConverter.exe http://www.example.com C:\pdf\page.pdf -c pdf -log C:\log\html.txt
Este es el reemplazo directo de una llamada URL a PDF de wkhtmltopdf. El mismo patrón sirve para imágenes — use -c jpg o -c tiff para rasterizar la página en lugar de escribir un PDF. Una máscara con comodín o un archivo de texto -list permite que un solo comando procese todo un lote de URLs o archivos locales.
Total HTML Converter X se licencia por servidor desde $750, y la prueba de 30 días es totalmente funcional y sin limitaciones — pruébela con las páginas que peor renderiza su pipeline actual y compare los PDFs uno junto al otro. El mismo motor también se distribuye como el Total HTML Converter de escritorio cuando necesite una interfaz gráfica para trabajos puntuales.
Descargue la versión de prueba y convierta sus archivos en minutos.
No se requiere tarjeta de crédito ni email.