Prawn: Поддержка встроенных PDF-файлов (например, векторных изображений)

Созданный на 3 апр. 2017  ·  3Комментарии  ·  Источник: prawnpdf/prawn

Было бы неплохо, если бы Prawn мог встраивать существующие PDF-файлы в создаваемый PDF-файл. В моем конкретном случае это было бы полезно для встраивания рисунков, логотипов и других видов векторных изображений в PDF-файлы, созданные Prawn.

Сейчас #image от Prawn не поддерживает никакие векторные изображения, только два растровых формата: JPEG и PNG. В LaTeX распространенными форматами, используемыми для векторных изображений, являются EPS и PDF (они изначально поддерживаются includegraphics внутри pdftex ). SVG также очень распространены в других настройках (например, на веб-страницах).

Мне кажется, что поддержка PDF была бы самым простым способом поддержки векторных изображений в креветках. Поддержка EPS и SVG потребует написания декодеров или транскодеров для этих форматов.

IIUC, Prawn раньше поддерживал _templates_, которые можно было использовать для встраивания PDF-файлов, как было предложено @practicingruby в выпуске №91. Похоже, это уже не так.

Код подтверждения концепции от @yob для старой (2012 г.) версии Prawn можно найти по адресу https://github.com/yob/prawn/commits/pdf_images .

Самый полезный комментарий

Есть гем prawn-svg для встраивания векторной графики.

Все 3 Комментарий

@gioele Для использования PDF-файлов в качестве формата изображения требуется анализатор PDF, которого нет у Prawn. Однако Prawn может использовать драгоценные камни pdf-reader и prawn-templates для использования PDF-файлов в качестве шаблона для страницы. Может быть, эту функциональность можно повторно использовать для поддержки изображений? @bvogel может знать об этом больше.

@gioele вы все еще можете использовать PDF-шаблоны через prawn-templates , однако вы ограничены одним шаблоном на странице, и если вы хотите рисовать поверх шаблона, рекомендуется подогнать размер шаблона под требуемый размер страницы. . Код в основном создает дополнительный поток контента с помощью pdf-reader , который находится в фоновом режиме. Общие последствия этого подхода превышают мой уровень понимания спецификаций PDF.

Есть гем prawn-svg для встраивания векторной графики.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги