У меня есть значок 434 .svg. Я хотел бы подготовиться к их использованию в приложениях для Android. Поскольку, вероятно, было бы безумным экспортировать их все вручную с помощью Inkspace, я пытаюсь найти способ экспортировать их с помощью ImageMagick и тому подобного. Я попытался придумать сценарий для этого:Автоматически конвертировать SVG в Android-применимый PNG
#!/bin/sh
echo "Deleting directories"
rm -rf ../mdpi ../hdpi ../xhdpi ../xxhdpi ../xxxhdpi
echo "Creating directories"
for d in ./*; do
mkdir -p ../mdpi/$d ../hdpi/$d ../xhdpi/$d ../xxhdpi/$d ../xxxhdpi/$d
done;
for f in ./*/*.svg; do
filename=`dirname $f`/`basename $f .svg`.png
echo "Converting $f to $filename"
convert -background transparent $f -resize 24x24 ../mdpi/$filename # 2>/dev/null
convert -background transparent $f -resize 36x36 ../hdpi/$filename # 2>/dev/null
convert -background transparent $f -resize 48x48 ../xhdpi/$filename # 2>/dev/null
convert -background transparent $f -resize 72x72 ../xxhdpi/$filename # 2>/dev/null
convert -background transparent $f -resize 96x96 ../xxxhdpi/$filename # 2>/dev/null
echo 'Done'
done;
Он преобразует их, но результаты выглядят ужасно. Четкие линии SVG размыты от сглаживания, поскольку ImageMagick, похоже, относится к SVG, как к любому другому изображению. Кроме того, размеры все неправильные, так как почти ни один из полученных файлов не квадратный.
мне нужен какой-то способ, чтобы преобразовать SVGs с почти такими условиями:
- Нет сглаживанием
- Создать прямоугольное изображение с SVG рисунка в центре
- Allow повторно -Цвет в полностью черный SVG изображение (по желанию)
- с помощью командной строки Linux (Arch Linux)
для полного рассказа: Я пытаюсь получить значки для Material Design from Polymer, которые можно использовать в приложении.
Он отлично работает, за исключением того, что команда должна быть 'convert', а не' im'. Большое спасибо! – Lanbo
Извините за это - я использую сокращенную символическую ссылку. – rostok
Вы можете опубликовать репозиторий github с созданными значками для android? @LambdaDusk – ClarkXP