Если формат такой жесткий, вам нужен такой формат, как PDF. HTML / CSS настолько изменчив, что вы никогда не получите его одинаковым во всех браузерах. Подключаемые веб-страницы не имеют реальной концепции страниц (хотя есть некоторая поддержка таких вещей, как стилизация печатных носителей CSS).
Также не у всех людей есть принтер. Попытка заставить что-то напечатать действительно неправильный подход и, как правило, отталкивает некоторых ваших клиентов.
Минимальное решение - создать страницу квитанции с помощью emdia print CSS, чтобы она большую часть времени выглядела как реагирующая.
Если этого недостаточно, вам нужно перейти в PDF. К сожалению, это становится трудным, поскольку этот вопрос относительно преобразования HTML + CSS в PDF иллюстрирует . PrinceXML отлично справляется с этой задачей, но это не дешево. Html2PDF является лучшим из множества открытых источников, но имеет проблемы (см. Этот ответ для более подробной информации). У меня была такая же проблема в пространстве Java и для счетов-фактур, заканчивающихся использованием Jasper Reports . Я действительно не видел эквивалентного решения для отчетности для PHP, хотя. В Python есть reportlab , что, вероятно, является вероятным кандидатом для выполнения такой работы.
Возможно, ваш лучший вариант - создать PDF-файл напрямую. Это немного более утомительно, но позволяет избежать многих ловушек преобразования HTML в PDF. В этом уроке ( Часть 2 ) объясняется, как.