Конвертируйте HTML в PDF, DOC, TXT, TIFF, JPEG на веб-серверах. Без графического интерфейса.
Windows
2000/2003/Vista
7/8/10/11
and
2012/2016/2019/2022 Server
and
Docker/Citrix/Wine
Total HTML Converter X — это серверный SDK, который преобразует HTML-файлы и реальные URL в PDF, DOC, RTF, XLS, TIFF, JPG, PNG и TXT — с полной поддержкой CSS, без headless Chrome на сервере и без зависимости от Print Service. Работает в тихом режиме: без графического интерфейса, без диалогов, без всплывающих окон. Total HTML Converter X поставляется как с консольной утилитой, так и с интерфейсом ActiveX/COM, поэтому встраивается в ASP, PHP, .NET, Python, Ruby, Java и любой другой бэкенд, поддерживающий COM.
Два режима источника: путь к локальному HTML/MHT-файлу или удалённый URL, который конвертер загружает напрямую (удобно для сценариев "отрисовать живую страницу в PDF"). Поддерживаемые форматы вывода:
Total HTML Converter X распознаёт все HTML-теги, включая управление разрывами страниц через стили CSS 1/2, поддерживает колонтитулы в стиле IE (дата, время, номер страницы, пользовательский водяной знак), автоматически подгоняет ширину HTML под выбранный размер страницы PDF (необходимо при печати широких HTML-таблиц), извлекает метаданные для индексации в базе данных и обрабатывает в пакетном режиме как статические файлы, так и реальные URL по маске папки или из файла очереди.
Удобство для многопользовательской работы: один и тот же Windows-сервер может обслуживать клиент-серверные установки в локальной сети или предоставлять конвертацию как веб-сервис. Многопоточный движок обрабатывает пакеты на максимальной скорости. Совместим с IIS, Docker, Citrix и Wine.
Попробуйте бесплатно (30 дней без ограничений) и убедитесь, что продукт стоит своих денег.
Вот лишь некоторые из поддерживаемых конвертаций:
|
|
|
LLM-агенты (Claude, ChatGPT, Cursor, Cline) и retrieval-пайплайны (LangChain, LlamaIndex, Haystack) не читают HTML — они читают текст. Total HTML Converter X пишет страницы и живые URL в GitHub-Flavored Markdown со структурированным фронтматтером и опциональным Docling-совместимым sidecar, поэтому страница попадает в ваш векторный индекс с иерархией, заголовками, ссылками и таблицами нетронутыми — а не как плоский текст с CSS-шумом и навигационным обрамлением.
Что вы получаете, выбирая Markdown на выходе:
h1…h6) разворачиваются в Markdown-заголовки, таблицы становятся GFM-таблицами, списки остаются списками, якоря сохраняются как [text](url), а inline-код и preformatted-блоки выживают как fenced code
source_file или source_url, format (MIME), title, canonical, определённый language, generator, created и binary_hash для provenance
# / ## / ###, поэтому RAG-сплиттер режет по семантическим границам, а не посреди раздела
.docling.json — структурированный JSON с bounding-прямоугольниками таблиц, инвентарём ссылок и chunks_hint для сплиттера
Это CoolUtils RAG Adapter — единый Markdown-контракт, общий для всех продуктов Total Converter X. Полная спецификация, пример .md + .docling.json и фрагменты для интеграции живут на странице Coolutils Converter X — RAG Adapter.
(включает 30-дневный бесплатный пробный период)
(только $750.00)
string src = @"C:\test\Source.html";
string dest = @"C:\test\Dest.pdf";
var cnv = new HTMLConverterX();
cnv.Convert(src, dest, "-cPDF -log c:\\test\\HTML.log");
if (!string.IsNullOrEmpty(cnv.ErrorMessage))
throw new Exception(cnv.ErrorMessage);
public static class Function1
{
[FunctionName("Function1")]
public static async Task Run(
[HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
StringBuilder sbLogs = new StringBuilder();
sbLogs.AppendLine("started...");
try
{
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
var assemblyDirectoryPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
assemblyDirectoryPath = assemblyDirectoryPath.Substring(0, assemblyDirectoryPath.Length - 4);
var executablePath = $@"{assemblyDirectoryPath}\Converter\HTMLConverterX.exe";
sbLogs.AppendLine(executablePath + "...");
var srcPath = $@"{assemblyDirectoryPath}\src\sample.html";
var outPath = Path.GetTempFileName() + ".pdf";
startInfo.FileName = executablePath;
if (File.Exists(outPath))
{
File.Delete(outPath);
}
if (File.Exists(executablePath) && File.Exists(srcPath))
{
sbLogs.AppendLine("files exists...");
}
else
sbLogs.AppendLine("EXE & source files NOT exists...");
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = $"\"{srcPath}\" \"{outPath}\" -cPDF";
using (Process exeProcess = Process.Start(startInfo))
{
sbLogs.AppendLine($"wait...{DateTime.Now.ToString()}");
exeProcess.WaitForExit();
sbLogs.AppendLine($"complete...{DateTime.Now.ToString()}");
}
sbLogs.AppendLine("Conversion complete.");
}
catch (Exception ex)
{
sbLogs.AppendLine(ex.ToString());
}
return new OkObjectResult(sbLogs);
}
}
dim C
Set C=CreateObject("HTMLConverter.HTMLConverterX")
C.Convert "c:\source.html", "c:\dest.jpg", "-cJPG -log c:\html.log"
C.Convert "https://www.coolutils.com/", "c:\URL Page.pdf", "-cPDF -log c:\html.log"
Response.Write C.ErrorMessage
set C = nothing
dim C
Set C=CreateObject("HTMLConverter.HTMLConverterX")
Response.Clear
Response.AddHeader "Content-Type", "binary/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=test.pdf"
Response.BinaryWrite C.ConvertToStream("C:\www\ASP\Source.html", "C:\www\ASP", "-cpdf -log c:\html.log")
set C = nothing
$src="C:\\test\\test.html";
$dest="C:\\test\\test.pdf";
if (file_exists($dest)) unlink($dest);
$c= new COM("HTMLConverter.HTMLConverterX");
$c->convert($src,$dest, "-cPDF -log c:\\HTML.log");
if (file_exists($dest)) echo "OK"; else echo "fail:".$c->ErrorMessage;
require 'win32ole'
c = WIN32OLE.new('HTMLConverter.HTMLConverterX')
src = "C:\\test\\test.html"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\HTML.log")
if not File.exist?(dest)
puts c.ErrorMessage
end
import win32com.client
import os.path
c = win32com.client.Dispatch("HTMLConverter.HTMLConverterX")
src = "C:\\test\\test.html"
dest = "C:\\test\\test.pdf"
c.convert(src, dest, "-cPDF -log c:\\test\\HTML.log")
if not os.path.exists(dest):
print(c.ErrorMessage)
uses Dialogs, Vcl.OleAuto;
var
c: OleVariant;
begin
c := CreateOleObject('HTMLConverter.HTMLConverterX');
c.Convert('c:\test\source.html', 'c:\test\dest.pdf', '-cPDF -log c:\test\HTML.log');
if c.ErrorMessage <> '' then
ShowMessage(c.ErrorMessage);
end;
var c = new ActiveXObject("HTMLConverter.HTMLConverterX");
c.Convert("C:\\test\\source.html", "C:\\test\\dest.pdf", "-cPDF");
if (c.ErrorMessage != "")
alert(c.ErrorMessage)
use Win32::OLE; my $src = "C:\\test\\test.html"; my $dest = "C:\\test\\test.pdf"; my $c = CreateObject Win32::OLE 'HTMLConverter.HTMLConverterX'; $c->convert($src, $dest, "-cPDF -log c:\\test\\HTML.log"); print $c->ErrorMessage if -e $dest;
"Почему я выбрал Total HTML Converter X. Было несколько причин. Во-первых, вы смогли предоставить функциональность, которая нам была нужна и которую другие конвертеры выполнить не могли (включая возможность иметь одинаковые заголовки на каждой странице и не разрывать строки между страницами). Во-вторых, вы поддерживали нас и быстро реагировали на запросы ещё до того, как мы купили продукт. В-третьих, вы пошли навстречу по цене на вторую royalty-free лицензию, когда мы объяснили нашу ситуацию. В-четвёртых, вы выглядели по-настоящему ориентированными на клиента, и у меня сложилось ощущение, что вы не забудете обо мне после покупки продукта — и я был прав!"
Andy Poulsen
www.asp-inno.com
"Мы формируем ежедневные отчёты по портфелям как HTML в нашем шаблонизаторе, затем прогоняем HTML через Total HTML Converter X, чтобы получить PDF с нашей цифровой подписью для клиентов. Сценарий подписания через -PFXFile/-PFXPass — это один вызов бинарника, без отдельной постобработки. Около 4000 отчётов за ночь, детерминированно от запуска к запуску. Мы заменили конвейер на wkhtmltopdf, который падал на асинхронно загружаемых шрифтах; встроенный рендерер просто работает."
Stefan H.
Senior Backend Developer at a financial-reporting platform
"Клиенты экспортируют статьи из нашей CMS и хотят PDF-копии для архива. Total HTML Converter X с -HeadText/-FootText проставляет метаданные публикации на каждой странице, а автоподгонка ширины HTML обрабатывает редакционные таблицы без необходимости писать кастомный CSS под каждый шаблон. Headless на Windows Server Core, без Chromium, без сюрпризов. Пять лет в продакшене, пропускная способность около 80 страниц в секунду на нашем железе для типичного HTML статьи."
Margit V.
DevOps Engineer at a CMS platform
"Встроили Total HTML Converter X в наш продукт для внутренних публикаций по Royalty-Free лицензии. Разовая плата за проект оказалась лишь долей от того, что просили коммерческие обёртки на основе wkhtmltopdf за права на распространение. Наш установщик поставляет и регистрирует ActiveX, наше приложение вызывает его напрямую, конечные пользователи видят только наш UI. Ограничение 32-битного ActiveX стоило нам пары дней переделки конвейера, но поддержка отвечала оперативно, когда мы спрашивали об обходных путях."
Carlos P.
Independent Software Vendor
"Клиентские дашборды у нас в HTML; некоторые пользователи хотят PDF-снимок для своих записей. Мы выставляем ссылку 'скачать как PDF', которая вызывает Total HTML Converter X с живым URL отрисованного дашборда. Конвертер логинится через cookie-сессию и формирует идентичный PDF-рендеринг. Управление разрывами страниц через CSS соблюдается точно, поэтому многосекционные дашборды разбиваются чисто. CLI стабильный, хорошо документированный, а -log -verbosity detail делает отладку тривиальной."
Akari N.
Lead .NET Developer at a partner-portal SaaS
Developers and IT teams that convert HTML to PDF, DOC, and images on web servers via ActiveX
Add HTML conversion to your web application via ActiveX
Web developers integrate Total HTML ConverterX into ASP, PHP, or .NET applications to convert user-submitted HTML files to PDF, DOC, or images on the server. Multiple users perform simultaneous conversions with no GUI interruptions — the converter runs silently and returns results automatically.
Convert HTML reports to PDF with digital signatures
Enterprise applications generate HTML reports on the server and use Total HTML ConverterX to convert them to PDF for delivery. Add digital signatures for document authenticity, apply custom watermarks, and auto-fit wide HTML tables to the chosen page size — all as part of the automated report pipeline.
Convert HTML content to standard formats for archival
Document management systems use Total HTML ConverterX to convert incoming HTML files, saved web pages, and email templates to PDF or TIFF for standardized storage. The converter recognizes all HTML tags and CSS styles, producing faithful output with headers, footers, and metadata extraction for database indexing.
Serve HTML conversion to all users on your local network
Organizations deploy Total HTML ConverterX as a client-server application on the local network. Employees across departments submit HTML files for conversion to PDF, XLS, or TIFF through a shared service — eliminating the need to install desktop converters on every workstation.
Batch-convert HTML files via command line on servers
IT teams run Total HTML ConverterX via command line in scheduled batch jobs and automated workflows. HTML output from web scrapers, CMS exports, or application logs is converted to PDF or images on arrival. Errors are saved to a log file for monitoring — no pop-ups or user interaction required.
Total HTML ConverterX поставляется с HTMLConverterX.exe — консольной программой, которую можно вызывать из .bat-скриптов, планировщика задач, бэкендов на PHP/.NET или любого серверного воркера. Набор флагов зеркалит GUI-версию HtmlConverter.exe; полный справочник смотрите в документации командной строки. Приведённые ниже рецепты охватывают запросы, о которых чаще всего спрашивают клиенты SDK.
Минимальный вызов — один исходный файл, один вывод, один целевой формат.
HTMLConverterX.exe "C:\pages\index.html" "C:\out\index.pdf" -cPDF
Обработайте каждый HTML-файл в папке и положите PDF в соседнюю папку вывода.
HTMLConverterX.exe "C:\pages\*.html" "C:\out\" -cPDF
Замените маску на *.mht, *.mhtml или *.htm, чтобы выбрать другой исходный формат.
Аргумент-источник может быть URL, а не только путём к файлу. Движок рендера Chrome обрабатывает современный CSS, веб-шрифты и страницы, насыщенные JavaScript.
HTMLConverterX.exe "https://www.coolutils.com" "C:\out\coolutils.pdf" -cPDF -engine chrome
Документационные сайты и экспортированные вики редко лежат в одной плоской папке. -Recurse обходит подкаталоги; -kfs воссоздаёт то же дерево на стороне вывода вместо того, чтобы сваливать каждый файл в одну корзину.
HTMLConverterX.exe "C:\docs\manual\*.html" "C:\out\manual\" -cPDF -Recurse -kfs
Типичная задача экспорта-всего-сайта: десятки страниц, которые принадлежат друг другу. -combine сливает их в порядке исходных файлов, а -toc генерирует оглавление.
HTMLConverterX.exe "C:\docs\manual\*.html" "C:\out\manual.pdf" -cPDF -combine -toc -sort name
Используйте -Multipage вместо -combine, когда целью является многостраничный TIFF.
Отчётам обычно нужен заголовок наверху каждой страницы и "Страница 1 из 10" внизу. Плейсхолдеры [page] и [date] раскрываются во время рендера.
HTMLConverterX.exe "C:\pages\*.html" "C:\out\" -cPDF -HeadText "Acme Quarterly Report — [date]" -HeadAlign center -FootText "Page [page]" -FootAlign right
Стандарт для отправки черновиков клиентам: пароль владельца блокирует права на редактирование/печать, пароль пользователя ограничивает открытие файла, а водяной знак маркирует каждую страницу.
HTMLConverterX.exe "C:\pages\*.html" "C:\out\" -cPDF -mp "owner-pwd" -up "user-pwd" -perm Print -wmt "CONFIDENTIAL" -wmr 45 -wtr 30
Замените Print любой комбинацией Copy, Modify, Annotation, FormFill, HighResPrint, чтобы предоставить именно те права, которые вы хотите.
Для контрактов, счетов и других документов, которым нужен проверяемый подписант. Файл PFX содержит сертификат; -PFXPass разблокирует его.
HTMLConverterX.exe "C:\pages\contract.html" "C:\out\contract.pdf" -cPDF -PFXFile "C:\certs\acme.pfx" -PFXPass "cert-pwd" -SignName "Acme Legal" -SignLoc "New York, NY" -SignRes "Approved by counsel"
Для рабочих процессов управления записями, требующих PDF/A по ISO 19005 с надлежащими авторскими метаданными.
HTMLConverterX.exe "C:\pages\*.html" "C:\archive\" -cPDF -pdfa -PDFAuthor "Acme Inc." -PDFTitle "Knowledge Base 2026" -PDFSubject "Support articles snapshot"
Когда воркер пишет файл-очередь, а конвертер его разбирает, не нужно зашивать каждый путь в командную строку. -list читает маски файлов (по одной на строку) из текстового файла; -verbosity detail пишет по одной строке лога на файл; -logmode append сохраняет историю между запусками.
HTMLConverterX.exe -list "C:\queues\batch.txt" "C:\out\" -cPDF -log "C:\logs\htmlconv.log" -verbosity detail -logmode append
Обновлено Fri, 01 May 2026
(только $750.00)
|
|
|
C.Convert("https://www.example.com/report", "c:\out\report.pdf", "-cPDF"). Это широко используется для отрисовки живых дашбордов состояния, генерируемых отчётов или страниц партнёрских порталов в PDF по расписанию.new COM("HTMLConverter.HTMLConverterX") в PHP, new HTMLConverterX() в .NET, win32com.client.Dispatch("HTMLConverter.HTMLConverterX") в Python, WIN32OLE.new('HTMLConverter.HTMLConverterX') в Ruby. Также консольный бинарник HTMLConverterX.exe можно вызвать из любого процесса, планировщика или shell-скрипта. Прямая отдача PDF в поток через ConvertToStream также доступна для веб-ответов ASP/PHP.-PFXFile "C:\certs\cert.pfx" -PFXPass "cert-pwd" для цифровой подписи выходного PDF сертификатом X.509. -HeadText и -FootText добавляют пользовательские колонтитулы с шаблонными токенами вроде [page], [date], [time] — эквивалент колонтитулов печати из IE. Поддерживаются водяные знаки (текст или изображение), AES-256-шифрование и флаги разрешений (-perm Print|Copy|Modify).page-break-before, page-break-after, page-break-inside: avoid) учитывается, поэтому логические единицы вроде строк или разделов остаются вместе при переходе между страницами. -PageSize задаёт целевой размер бумаги (A4, Letter, Legal и т.д.) для каждой задачи..md в качестве выходного формата, и конвертер запишет GitHub-Flavored Markdown: HTML-заголовки разворачиваются в #/##/###, таблицы становятся GFM-таблицами, списки остаются списками, якоря сохраняются как [text](url), а блоки кода выживают как fenced code. Шаблонный мусор (навигация, футер, cookie-баннеры) отсекается — в индекс попадает только содержимое статьи. YAML-фронтматтер несёт source_url, title, canonical, определённый language, generator и бинарный хэш для provenance. Это часть CoolUtils RAG Adapter — тот же Markdown-контракт разделяют все продукты Total Converter X.binary_hash для provenance и массив chunks_hint, который читает ваш сплиттер. Включается флагом -Docling в командной строке. JSON независим от Markdown — можно отправить в индекс оба файла или ограничиться только .md..md — это обычный GFM с YAML-фронтматтером, поэтому его напрямую читают UnstructuredMarkdownLoader из LangChain, MarkdownReader из LlamaIndex, MarkdownToDocument из Haystack и MCP-файловые инструменты Claude Code. Для Claude, ChatGPT или любого чат-интерфейса вы можете вставить Markdown в контекст как есть — заголовки показывают, из какого раздела пришёл чанк, таблицы рендерятся, а фронтматтер даёт модели исходный URL и подсказки по языку.HTMLConverterX.exe "https://example.com/article" "C:\out\article.md" -cMD -Docling. Передайте локальный HTML/MHT-файл вместо URL для оффлайн-страниц. -cMD выбирает Markdown; -Docling дополнительно пишет sidecar .docling.json. Из COM: obj.Convert("https://example.com", "page.md", "-cMD -Docling"). Получившийся Markdown готов к чанкованию, эмбеддингу и индексации в любом векторном хранилище.Скачайте пробную версию и конвертируйте файлы за считанные минуты.
Не требуется ни банковская карта, ни email.