У меня есть редактор шаблонов, он реализован в JSF, PrimeFaces. В этом редакторе шаблонов пользователь может добавлять различные компоненты. Для каждого компонента можно настроить:
- ширина, высота;
- позиция;
- текстовое содержание;
Полная информация, связанная с этими компонентами, хранится в XML. Атрибуты ширины / высоты / положения хранятся в пикселях. Атрибут 'Position' - это абсолютная позиция по отношению к границам шаблона.
В настоящее время у меня есть задача по подготовке PDF этого шаблона, который хранится в XML. На данный момент у меня есть идея создать страницу XHTML с этими компонентами и позициями, размерами из XML. Для создания PDF у меня есть кнопка на странице шаблона. Действие для этой кнопки - получение содержимого со страницы XHTML и создание PDF-файла библиотекой Flying Saucer. В настоящее время я вижу, что у меня есть проблемы с отображением необходимых данных. Причина в разной ширине страницы PDF и редактора шаблонов. Все размеры и позиции в пикселях не соответствуют действительности на странице PDF. Можете ли вы дать мне совет, как правильно решить задачу создания PDF из шаблона XHTML? Может мне стоит сохранить позиции, размеры в другом формате, советуйте пожалуйста.