Конвертируйте 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
Разработчики и ИТ-команды, конвертирующие HTML в PDF, DOC и изображения на веб-серверах через ActiveX
Добавление конвертации HTML в ваше веб-приложение через ActiveX
Веб-разработчики интегрируют Total HTML ConverterX в приложения ASP, PHP или .NET для конвертации загружаемых пользователями HTML-файлов в PDF, DOC или изображения на сервере. Несколько пользователей выполняют одновременные конвертации без прерываний интерфейса — конвертер работает незаметно и автоматически возвращает результаты.
Конвертация HTML-отчётов в PDF с цифровыми подписями
Корпоративные приложения генерируют HTML-отчёты на сервере и используют Total HTML ConverterX для конвертации их в PDF для доставки. Добавляйте цифровые подписи для подтверждения подлинности документа, применяйте пользовательские водяные знаки и автоматически подгоняйте широкие HTML-таблицы под выбранный размер страницы — всё в рамках автоматизированного конвейера отчётности.
Конвертация HTML-контента в стандартные форматы для архивирования
Системы управления документами используют Total HTML ConverterX для конвертации входящих HTML-файлов, сохранённых веб-страниц и шаблонов писем в PDF или TIFF для стандартизированного хранения. Конвертер распознаёт все HTML-теги и стили CSS, создавая точный вывод с заголовками, нижними колонтитулами и извлечением метаданных для индексирования в базе данных.
Предоставление конвертации HTML всем пользователям локальной сети
Организации разворачивают Total HTML ConverterX как клиент-серверное приложение в локальной сети. Сотрудники из разных отделов отправляют HTML-файлы для конвертации в PDF, XLS или TIFF через общий сервис — без необходимости устанавливать настольные конвертеры на каждой рабочей станции.
Пакетная конвертация HTML-файлов через командную строку на серверах
ИТ-команды запускают Total HTML ConverterX через командную строку в запланированных пакетных заданиях и автоматизированных рабочих процессах. HTML-вывод из веб-скрапперов, экспортов CMS или журналов приложений конвертируется в PDF или изображения по мере поступления. Ошибки сохраняются в лог-файл для мониторинга — без всплывающих окон и участия пользователя.
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.