Ответ 1
Когда у меня возникла проблема с черными квадратами, я смог ее решить без установки X11, установив пакет urw-fonts.
Я установил wkhtmltopdf на Centos 5.5. (Поскольку были проблемы с библиотекой, это было 4 дня). Сейчас он работает частично. Я сказал частично потому, что все pdf файлы, созданные wkhtmltopdf, включают квадраты вместо текста?
Что я могу сделать? Я искал google, но ничего не нашел.
Цените свою помощь.
Когда у меня возникла проблема с черными квадратами, я смог ее решить без установки X11, установив пакет urw-fonts.
Мне удалось решить эту проблему, используя следующий ресурс:
http://code.google.com/p/wkhtmltopdf/wiki/static
Короче говоря, вам, вероятно, не нужно устанавливать всю библиотеку x11 и все ее зависимости. Просто установка urw-fonts должна делать трюк. В приведенном выше ресурсе упоминается CentOS как проблема.
Запустите эту команду на своем сервере:
sudo yum install urw-fonts libXext openssl-devel
Я использую CentOS 7 с wkhtmltox 12.4 и обнаружил, что ни один из предложений до сих пор не зафиксировал мой блок-текст в выходных PDF файлах.
Для меня окончательным решением было установить dejavu-sans-fonts.
Я собираюсь угадать, что это проблема с шрифтом или, возможно, проблема с кодировкой.
Какую кодировку использует ваш HTML? (Это проще проверить, поэтому я перечислил его первым). Если это что-то напуганное, вам, возможно, придется перевести его до подачи его на wkhtmltopdf. Сообщение об ошибке может помочь и в этом случае.
Знает ли wkhtmltopdf, как найти ваши шрифты? Если wkhtmltopdf не может найти ваши системные шрифты, тогда у него возникнет серьезная проблема и может вернуться к символу "Неизвестный символ" (пустое поле).
Кроме того, если ваш текст содержит символы, которые на самом деле не существуют в запрошенном шрифте, вы получите символ неизвестного символа. Если вы предполагаете использовать "Courier New", а текст - все арабский... курьером шрифта не содержит этих символов. Браузеры имеют различные позиции понижения, которые они могут использовать, но рендеринг PDF будет делать то, что он сказал, насколько это возможно. И в этом случае это неизвестный символ.
Простой тест: может ли wkhtmltopdf успешно конвертировать "hello world.html" в PDF в вашу систему?
<html><body>Hello World</body></html>
Если это сработает, вам нужно выяснить, где по линии между "мертвым мозгом" и "вашим настоящим html" Things Go Awry.
Я думаю, вам нужно попытаться установить пакеты X11, wkhtmltopdf использует это для шрифтов и т.д. Симптомы, которые вы описываете, - это то, что программа будет делать с отсутствием этих пакетов.
Автономному wkhtmltopdf не нужен x-сервер - попробуйте его и посмотрите, не устраняет проблему. Я работаю над CentOS без графики/x-сервера, и он работает абсолютно нормально.
В случае, если кто-то сталкивается с той же проблемой на Alpine. Это решило проблему для меня:
apk --update add ttf-dejavu