Добрый день.
Такая проблема. Есть макет дисконтной карты (в SVG, png, jpg). Нужно проставить на них порядковые номера, например, с 1 по 100 или больше и разнообразней, и сохранить их.
Сидеть в inkscape/gimp нет особого желания, а как по другому не знаю.
Что-нибудь умеет менять изображение из командной строки? А с башем я и сам разберусь. Может какой плагин к этому делу есть?
Спасибо.
Автоматизация в гарфических редакторах (нужно пронумеровать каждую картинку)
Модератор: /dev/random
-
loki4
- Сообщения: 115
- ОС: GNU/Linux Arch Linux
-
Portnov
- Модератор
- Сообщения: 1786
- Статус: Матёрый линуксоид
- ОС: Debian testing/unstable
Re: Автоматизация в гарфических редакторах
imagemagick спасет отца русской демократии
Читайте convert --help.
Работа: Ubuntu 9.10
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
Дом: Debian testing/unstable и на всякий случай winxp в virtualbox.
Для разнообразия: моя домашняя страница -http://iportnov.ru
-
prokoudine
- Сообщения: 688
Re: Автоматизация в гарфических редакторах
Сэр, а давайте-ка прикинем алгоритм в случае с SVG.
Вот у нас есть XML-ный файл, в котором есть текстовый объект, то есть попросту тэг, внутри которого некие данные. Требуется:
1. Открыть файл для чтения.
2. Найти тэг (скажем, по уникальному ID).
3. Поменять один текст на другой.
4. Экспортировать всё изображение в новый PNG.
5. Ещё раз один текст на другой.
6. Снова экспортировать всё изображение в новый PNG.
7. ... и так далее.
Остаётся лишь поставить Inkscape и прочитать вывод inkscape --help на предмет информации о ключиках -z, -e и -I.
-
loki4
- Сообщения: 115
- ОС: GNU/Linux Arch Linux
Re: Автоматизация в гарфических редакторах
Спасибо за подсказки!
С imagemagickом с первого наскока ничего не получилось. Точнее из хелпа сразу и не понял, что и как делать, а примеров не нашел. Но все равно спасибо, буду знать, что за зверь.
С Inkscape получше. Только вот не понял, как пользоваться ключиком -I. prokoudine, можешь на примере подсказать как он работает?
В итоге получил следующее, вдруг кому поможет в личных целях. Код простой, но мне помог. Поиск и замену делал просто по шаблону, кавычки прихватил, чтоб наверняка
.
Единственное, нужны были 3х значные числа, поэтому пришлось принудительно добавить нолик. Если кто знает, как решить - дайте знать.
С imagemagickом с первого наскока ничего не получилось. Точнее из хелпа сразу и не понял, что и как делать, а примеров не нашел. Но все равно спасибо, буду знать, что за зверь.
С Inkscape получше. Только вот не понял, как пользоваться ключиком -I. prokoudine, можешь на примере подсказать как он работает?
В итоге получил следующее, вдруг кому поможет в личных целях. Код простой, но мне помог. Поиск и замену делал просто по шаблону, кавычки прихватил, чтоб наверняка
Код: Выделить всё
#!/bin/sh
for ((i=10; i<30; i++))
do
sed "s/>010</>0$i</" "card.svg" >> temp$i.svg
inkscape -z --export-png=png/0$i.png temp$i.svg
done
rm temp*.svgЕдинственное, нужны были 3х значные числа, поэтому пришлось принудительно добавить нолик. Если кто знает, как решить - дайте знать.
-
prokoudine
- Сообщения: 688
Re: Автоматизация в гарфических редакторах
Не могу, ни разу не пользовался
Кстати, если умеете писать на Python, Perl или Ruby, можно написать сценарий для самого Inkscape, которыйможно будет вызывать из GUI. Например, нарисовать текстовую рамку, в которую должен поместиться код, указать выключку (вправо, в данном случае), потом выбрать её и запустить сценарий, который будет по очереди вписывать туда цифры и экспортировать всю картинку.