Il tuo flusso di generazione PDF si basa su wkhtmltopdf, e ha funzionato per anni — finché il progetto non è stato archiviato. Il repository è diventato di sola lettura il 2 gennaio 2023, quindi non arriveranno più patch di sicurezza, e il datato motore WebKit su cui si basa renderizza in modo imprevedibile il CSS moderno (flexbox, grid, custom properties). Se i tuoi report ora escono disallineati, o non puoi più giustificare l'uso di un binario non mantenuto su un server di produzione, hai bisogno di una sostituzione supportata. Su Windows, quella sostituzione è Total HTML Converter X.
Risposta rapida: Per HTML semplice e statico, wkhtmltopdf funziona ancora e resta gratuito, ma il suo progetto è archiviato — niente patch di sicurezza, e il CSS moderno viene renderizzato in modo imprevedibile. Per un uso in produzione mantenuto su server Windows, Total HTML Converter X offre rendering CSS aggiornato, conversione di URL live e file in PDF, DOC, TIFF e JPEG, una riga di comando silenziosa e un'API COM/ActiveX richiamabile da ASP, PHP e .NET.
| Total HTML Converter X | wkhtmltopdf | |
|---|---|---|
| Manutenzione attiva | Sì — prodotto commerciale con aggiornamenti continui | No — repository archiviato e di sola lettura dal 2 gennaio 2023 |
| Motore di rendering | Motore aggiornato con supporto completo a CSS 1/2, interruzioni di pagina, adattamento alla larghezza, più un motore di rendering Chrome opzionale | Build WebKit datata; il CSS moderno (flexbox, grid) spesso viene renderizzato in modo scorretto, senza ulteriori correzioni |
| Gestione JavaScript | Sì — tramite il motore di rendering Chrome (-engine chrome) | Limitata al motore WebKit congelato |
| Input sorgente | File HTML/MHT locali e URL live, in batch | File locali e URL |
| Formati di output | PDF, DOC, RTF, XLS, TIFF, JPG, PNG, TXT | Solo PDF e immagini (PNG, JPG) |
| Riga di comando | Sì — binario silenzioso, nessuna interfaccia grafica, nessuna finestra di dialogo, nessun pop-up | Sì — strumento da riga di comando |
| API server | ActiveX/COM richiamabile da ASP, PHP, .NET, Python, Ruby, Java | Binding e wrapper di terze parti, mantenuti dalla community |
| Sicurezza PDF | Firme digitali (X.509 PFX), crittografia AES, password, flag di permesso | Di base; nessuna firma |
| Licenza | Commerciale, licenza una tantum da $750, prova gratuita di 30 giorni | Gratuito, open source |
| Sistema operativo | Windows 7/8/10/11 e Windows Server (IIS, Docker, Citrix, Wine) | Windows, Linux, macOS |
| Supporto | Supporto sviluppatori da CoolUtils | Solo community; progetto archiviato |
Va reso merito a chi lo merita: wkhtmltopdf si è guadagnato il suo posto. È gratuito e open source, si avvia con un singolo comando, e si integra bene in qualsiasi linguaggio in grado di eseguire comandi di shell. Per un decennio è stato la risposta di default alla domanda renderizza questo HTML in PDF su un server, e la sua base installata è enorme — innumerevoli flussi di fatturazione, reportistica ed esportazione lo richiamano ancora ogni giorno. Per HTML semplice e statico — una tabella, una ricevuta stilizzata, un report semplice — produce ancora un buon PDF a costo zero.
Se i tuoi template sono semplici e immutati, e accetti di eseguire un binario archiviato, wkhtmltopdf non è rotto. Il problema è tutto ciò che è cambiato da quando si è fermato: CSS più recente, TLS più recente, aspettative di sicurezza più recenti.
Su un server Windows, Total HTML Converter X è la sostituzione più diretta: mantiene il flusso di lavoro da riga di comando che hai già scriptato, aggiunge un motore di rendering mantenuto, ed estende l'output oltre il PDF. Sostituisci una chiamata da riga di comando con un'altra e guadagni firma digitale, crittografia e formati aggiuntivi. Se lavori su Linux o macOS, Total HTML Converter X non è d'aiuto — è disponibile solo per Windows — e il percorso mantenuto in quel caso è Chrome o Chromium headless, direttamente o tramite un wrapper.
Due modi: richiamare il binario da riga di comando tramite una shell, oppure chiamare l'oggetto ActiveX/COM in-process. Richiamarlo tramite shell è la modifica minima rispetto a un flusso basato su wkhtmltopdf — sostituisci l'eseguibile e la sintassi degli switch:
<?php
// Converti un file HTML locale in PDF da PHP su Windows
exec('HtmlConverter.exe C:\www\invoice.html C:\pdf\invoice.pdf -c pdf -log C:\log\html.txt');
?>
Lo switch -c pdf imposta il formato di destinazione; aggiungi -combine per unire più file in un unico PDF, oppure -pfxfile e -pfxpass per firmare il risultato. Poiché il binario funziona in modo silenzioso, nessuna finestra di dialogo blocca la richiesta web. Da ASP classico o .NET puoi invece creare l'oggetto ActiveX/COM incluso ed eseguire la stessa conversione in-process, senza avviare un processo figlio per ogni pagina.
Sì — fornisci al convertitore un URL al posto di un percorso di file e recupera e renderizza la pagina live:
HtmlConverter.exe http://www.example.com C:\pdf\page.pdf -c pdf -log C:\log\html.txt
Questa è la sostituzione diretta di una chiamata wkhtmltopdf URL to PDF. Lo stesso schema si applica alle immagini — usa -c jpg o -c tiff per rasterizzare la pagina invece di scrivere un PDF. Una maschera con caratteri jolly o un file di testo -list permette a un singolo comando di elaborare un intero batch di URL o file locali.
Total HTML Converter X è concesso in licenza per server a partire da $750, e la prova gratuita di 30 giorni è pienamente funzionale senza limitazioni — provala sulle pagine che il tuo flusso attuale renderizza peggio e confronta i PDF fianco a fianco. Lo stesso motore è disponibile anche come Total HTML Converter per desktop quando hai bisogno di un'interfaccia grafica per lavori occasionali.
Scarica la versione di prova e converti i tuoi file in pochi minuti.
Non è richiesta carta di credito o email.

Argomenti Correlati
Convertire HTML con ActiveX — Integra la conversione HTML nella tua applicazione