Преобразование SVG с использованием ImageMagick неправильно применяет перевод

Я работаю на Mac с Mac OS X 10.5 и пытаюсь использовать ImageMagick для преобразования SVG файл в формате PNG. Проблема в том, что когда я его использую, повернутое изображение не отображается в правильном положении. Если я использую Batik для преобразования файла, он работает правильно.

Проведя небольшое исследование, я нашел ветку, в которой говорилось о попытке обновить библиотеку SVG. В настоящее время я использую ImageMagick 6.6.5, а библиотека SVG — 2.7.7 в соответствии с «идентифицирующим форматом списка». Тема, которую я нашел, рекомендовала использовать librsvg 2.32.

Я попытался использовать порт для установки обновленной библиотеки SVG и использовать порт для переустановки ImageMagick. Проблема и вопрос, который у меня есть, заключается в том, что независимо от того, что я делаю с портом, я не могу заставить его использовать более новую версию библиотеки SVG. Он остается на 2.7.7. Как заставить его использовать новую библиотеку?


person kareed    schedule 20.05.2011    source источник
comment
У меня эта проблема на окнах.   -  person Stefan Rusek    schedule 03.07.2011
comment
Ваша проблема заключается в установке PATH для новых библиотек/двоичных файлов. или удаление старых библиотек. Возможно, вам следует попытаться выяснить, какие библиотеки связаны с двоичным файлом, и скомпилировать их вместе с более новой версией. попробуй otool -L узнать   -  person Marek Sebera    schedule 08.07.2011
comment
Это очень легко воспроизвести. 1. Загрузите двоичные файлы imagemagick с их веб-сайта. 2. Попробуйте преобразовать файл svg с трансляциями в png, используя convert src.svg targ.png. Казалось бы странным, что такая важная часть поддержки SVG просто сломана.   -  person Stefan Rusek    schedule 09.07.2011
comment
Как насчет того, чтобы попробовать inkscape, который также имеет интерфейс командной строки.   -  person kamae    schedule 09.07.2011
comment
Также попробуйте задать этот вопрос на форуме ImageMagick, они очень полезны.   -  person Ivan    schedule 22.11.2011


Ответы (2)


К сожалению, я тоже некоторое время шел по этому пути. После очень долгого биения головой о стену и получения изрядных синяков в процессе, я обнаружил, что единственное, что сработало, это inkscape. Все остальное просто не тянет. К сожалению, CLI-интерфейсы inkscape не очень хороши и не предлагают такой гибкости, как хотелось бы (особенно при конвертации в PDF-файлы и т. д.), по крайней мере, они работают лучше, чем все остальное. Чтобы использовать его:

inkscape -f INPUT.SVG -e OUTPUT.PNG

Дополнительные сведения см. в разделе inkscape --help.

Дополнительное предупреждение: inkscape -h на самом деле не делает того, что вам нужно, и запускает графический интерфейс.

person Wes Hardaker    schedule 27.02.2012

Я столкнулся с этим на 10.7, установив imageMagick через macPorts. После нескольких неудачных попыток удаления/переустановки с разными параметрами. Я, наконец, удалил и собрал из исходного кода после установки librsvg, и теперь все работает с использованием обновленных библиотек svg.

Исходный код Unix ImageMagick и инструкции находятся здесь: http://www.imagemagick.org/script/install-source.php

ImageMagick также предоставляет инструкции по явному связыванию библиотек и путей к ним на шаге настройки (http://www.imagemagick.org/script/advanced-unix-installation.php), хотя мне не нужно было этого делать.

person megamatt    schedule 04.07.2012