Как создать файл ICO из SVG, используя Maven? - PullRequest
4 голосов
/ 08 марта 2011

В моем проекте мне нужен файл значков (.ICO) для исполняемого файла Windows. Я хотел бы сгенерировать этот файл из SVG, чтобы он содержал несколько изображений для разных размеров. Есть ли плагин Maven, который может сделать это для меня?

Я знаю, что могу просто поместить файл значков в свой репозиторий, но исходный файл представляет собой изображение SVG, поэтому я бы хотел этого избежать.

Ответы [ 4 ]

3 голосов
/ 08 марта 2011

Не думаю, что для этого есть какой-нибудь плагин Maven. А также проблема выходит за рамки самого Maven.

Что вы можете сделать:

  1. Преобразование SVG в PNG с использованием Apache Batik Rasterizer
  2. Преобразование PNG в ICO с использованием ImageMagick и JMagick wrapper
  3. Создайте Apache Ant скрипт, который будет вызывать 1 и 2, и добавьте его к одной из фаз жизненного цикла maven, используя плагин AntRun .
2 голосов
/ 11 апреля 2012

Я наткнулся на ваш вопрос в поисках решения очень похожей проблемы.Ни один из приведенных ответов меня не устраивал, так как я не хотел связываться с запущенными исполняемыми файлами, поэтому я написал задачу на чистом Java Ant (используя Batik и image4j под обложками)

Я открыл ее из открытых источниковна http://svg2ico.sourceforge.net/ - может быть, вы могли бы позвонить с Maven?

1 голос
/ 10 марта 2011

batik-maven-plugin как минимум позволит вам генерировать PNG из SVG.Не уверен, как генерировать ICO, хотя.

1 голос
/ 08 марта 2011

Вы можете растеризовать SVG в PNG на веб-странице, используя Google Canvg , чтобы вставить его в Canvas, а затем используя toDataURL() на холсте, чтобы получить данные PNG в кодировке base64.Затем вам нужно будет это декодировать.

Или вы можете использовать любое количество серверных конвертеров SVG-в-PNG .

Нелучший ответ, чем у @ Андрея, но показывает больше вариантов для первого шага.

...