Отказ от ответственности: я постоянный участник проекта креветок.
Prawn не построен поверх PDF :: Writer - это замена, написанная с нуля, которая позволяет избежать многих ограничений. Я бы посоветовал против PDF :: Writer. Он старый, сложный в использовании и не поддерживает текст Unicode.
В зависимости от типа документа, который вам нужно сгенерировать, у вас есть несколько вариантов:
RTex - это плагин rails, который использует латекс для генерации вывода PDF. Если вам нужно создать отформатированный документ с большим количеством текста, и вы довольны (огромной) зависимостью от латекса, это хорошее решение.
Если вам нравится идея преобразования HTML-> PDF (например, HTMLdoc, но вы знаете ... хорошо), вы можете попробовать PrinceXML . Есть бесплатная версия, но это водяные знаки на выходе. Лицензионная версия стоит несколько тысяч долларов. Вывод отличный, благодаря полезной поддержке CSS. Существует как минимум 1 плагин, который поможет вам интегрировать Prince с Rails - princely .
Для создания выходных данных с синтаксисом Ruby Prawn - ваш лучший вариант. Создание страниц вашего вывода вручную дает вам много мелкого контроля, но вы можете увязнуть в координатной математике. Он также не поддерживает хотя бы одну из необходимых вам функций - вложенные таблицы.
Какой из них работает для вас, действительно зависит от стиля документа, который вам нужно сгенерировать.