Страницы

Поиск по вопросам

суббота, 11 января 2020 г.

Преобразование SVG в векторные PDF,PS

#batik #pdf #php #imagemagick #svg


Добрый день, сообщество!
Что имеется: программно сформированный на сервере валидный SVG, внутри в основном
path. Серверный код на php, поэтому решение предпочтительно для php.
Что требуется: получить PDF, PS, а также PSD(по возможности) содержащие ВЕКТОРНЫЙ
рисунок такой же как в исходном SVG. В случае PDF это будет встроенный SVG, для остальных
не знаю.
Что пробовал: MagickWand(ImageMagick) - с удовольствием конвертирует, практически
что угодно и во что угодно, особенно удачно получается PNG (даже с прозрачностью).
Но есть одна большая проблема, которая все плюсы сводит на нет. При конвертации SVG
в PDF, EPS, PS, PSD, растрирует исходный рисунок.
Что уже посмотрел: но не совсем разобрался:
 1. Apache Batik, не совсем понятно как работать и что будет на выходе. Можно конечно
через exec запускать яву, но как к этому отнесется хостер, пока не известно.

Apache FOP, очень интересный инструмент, уже практически разобрался со всеми преобразованиями
и почти получил файл .fo, все примитивы преобразуются кроме, нужного path, которого,
почему-то не было в найденной схеме. И что дальше делать, снова exec и java?

В общем, может кто уже сталкивался с подобной темой, буду очень благодарен за инфу.    


Ответы

Ответ 1



Обратите внимание на TCPDF TCPDF является PHP-классом генерации PDF-документов, не требующим внешних расширений. Этот класс встраивает SVG непосредственно в векторном виде в PDF, но при желании можно и преобразовать его в растр с помощью того же ImageMagic. Пример использования класса. Пример полученного PDF-документа с SVG-графикой.

Комментариев нет:

Отправить комментарий