Я смотрел на это в течение двух разочаровывающих дней и перепробовал много вещей.Мой совет, и это совет, который они дают в документации: придерживаться встроенных изображений .Под этим я подразумеваю определение изображения в его байтовой форме.Вы не пожалеете об этом, и вы будете уверены, что плагин рендеринга будет хорошо играть с другими плагинами, такими как пользовательский интерфейс и ресурсы.
Сначала создайте объект файла следующим образом:
def paid = new File(ApplicationHolder.application.parentContext.servletContext.getRealPath("/images/paid.jpg"))
, затем передайте байты файла в модель
renderPdf(template:invoiceTemplate, model:[paidBytes:paid.bytes])
Теперь в вашем шаблоне pdf используйте следующееtag:
<rendering:inlineJpeg bytes="${paidBytes}" />
Если у вас нет проблем с зависимостями, то вам следует установить.Если вы сталкиваетесь с проблемами зависимости, как я и отмечал ЗДЕСЬ , то посмотрите версию iText, которую вы используете.