ПРИМЕЧАНИЯ. Мой запрос касается программного обеспечения или библиотек, поэтому я и публикую здесь. Я также проверил подобные темы здесь, но они попросили что-то немного другое.
У меня есть следующая HTML-страница:
<html>
<head>
<link rel="stylesheet" type="text/css" href="font.css">
<style>
body {
font-family: "Gotham SSm A";
font-size: 22px;
}
</style>
</head>
<body>
SUMMARY
</body>
</html>
И определение шрифта в font.css (сокращено для краткости):
@font-face {
font-family: "Gotham SSm A";
src: url(data:font/truetype;base64,...) format('truetype');
font-weight:700;
font-style:italic;
}
Страница хорошо отображается в браузере, и при печати в PDF из браузера, также отображается хорошо. Однако все утилиты, которые я использовал для создания PDF-файлов из серверного программного обеспечения (PHP), не выполнялись
Wkhtmltopdf, PhantomJS и PrinceXML не показали правильный шрифт (последний дал предупреждение о том, что не разбирает все правила CSS).
SlimerJS не смог выполнить рендеринг, открыл окна и имел недопустимый
зависимости
Pandoc конвертирует только в LaTeX и требует различных утилит (на
Windows / Linux) для перехода в PDF. Более того, это конверсия LaTeX
(согласно онлайн-версии I Trie) испортил шрифты как
Что ж.
Каковы мои альтернативы? Мне нужно это, чтобы …
1. Respect modern CSS (including @font-face).
2. Be available on Windows & Linux with similar output on both
3. Be offline (utility or library is fine)
4. Allow commercial use
5. Be cost effective (preferably free)
Посмотри на PrinceXML.
Он отвечает всем вашим техническим требованиям. Это бесплатно для частного использования (я не знаю уровни цен при коммерческом использовании).
У программного обеспечения callas (смотрите, я связан с этой компанией!) есть технология, над которой они работают, pdfChip, которая отлично справится с этой задачей. Это не бесплатно, но он будет обрабатывать HTML + CSS + Javascript, используя простой инструмент командной строки. И он может генерировать хороший готовый к печати PDF (включая PDF / X, метаданные, профессиональные цветовые пространства, штрих-коды и многое другое …).
Я пока не могу указать вам URL-адрес, поскольку он будет опубликован в январе 2015 года, но отправьте мне личное сообщение, если хотите узнать, будет ли он работать.