Для преобразования HTML в PDF я получаю наилучшие результаты с Wkhtmltopdf . Поскольку он использует механизм рендеринга Webkit (например, тот же, что и в Chrome и Safari), результаты в точности соответствуют тому, как вы видите HTML, отображаемый в этих браузерах.
На самом деле это просто двоичный файл, который вы можете запустить из командной строки, но пример класса PHP-оболочки доступен на веб-сайте. Мне также не было сложно написать класс-оболочку с некоторыми дополнительными функциями.