У меня есть HTML-файл, который использует style.css и имеет цвета, например:
<font style=BACKGROUND-COLOR:red; color=white>FOO</font>
Как я могу «экспортировать» этот локальный файл на своем Ubuntu 12.04 в PDF? (внешний вид и цвет должны оставаться неизменными). Я попробовал, например: Ctrl + P -> распечатать в PDF, но он не сохранил цвета. Я попробовал htmldoc с опцией --color .. но это та же проблема ..
Было бы здорово сделать это через командную строку.
Откройте ваш html-файл в LibreOffice Writer, а затем в меню File в меню выберите export to PDF. Вот и все.
Если вы предпочитаете командную строку, взгляните на страницу «Преобразование HTML-страницы в PDF» с использованием инструмента с открытым исходным кодом - Linux / OS X / Windows.
Программное обеспечение может быть установлено с помощью [ f3].
Webkit HTML to PDF:
sudo apt-get install wkhtmltopdf
http://wkhtmltopdf.org/
Последняя версия безголовы (не требует X-сервера).
Другая возможность: phantomjs - это волшебный безголовый веб-браузер, также основанный на webkit html. Он может экспортировать страницу как PDF среди прочего.
http://phantomjs.org
WeasyPrint кажется многообещающим. Я попытался wkhtmltopdf, и хотя он делает вещи приемлемым образом, он не отображает все правильно и создает pdf-файлы, которые занимают много секунд, чтобы открыть!
Установите
pip install weasyprint
[d3 ] Запуск weasyprint mypage.html out.pdf
В качестве дополнительного может оказаться полезным изменить CSS, если вы хотите, чтобы просмотр браузера и PDF выглядели одинаково.
/* For converting to PDF */
body {
width: 210mm; /* A4 dimension */
}
@page {
margin:0;
padding: 0;
}
Расширение Web2PDFConverter для Chromium или Chrome конвертирует любую веб-страницу в PDF.
Или вы можете просто использовать этот сайт только: Web2PDFConverter . Для локальных файлов: Web2PDFConverter
Вы можете попытаться использовать PhantomJS и некоторый код, например, используя rasterize.js:
phantomjs rasterize.js http://example.com/
Или используйте NodeJS PhantomJS (см. GitHub , установите через: npm install -g html-pdf), как указано в комментарии. Использование:
html-pdf http://example.com/ example.pdf
Попробуйте Dompdf (проверьте исходный код в GitHub), который является конвертером HTML в PDF. Эта библиотека очень проста в использовании, а также очень проста в установке.
Требования: PHP 5.0+ (рекомендуется 5.3+), расширение DOM, расширение GD
Пример кода PHP:
Я попробовал WeasyPrint, как было предложено другими. Он не хорошо конвертируется на многих страницах, и на некоторых страницах он просто терпит неудачу с ошибкой.
Следующий аддон Firefox работает для меня. Firefox 55. Он говорит только о Windows, но он работает на Ubuntu.