#imagemagick
#imagemagick
Вопрос:
Я хочу создать файл .png, который является просто сплошным цветом.
Это должно быть легко сделать с помощью ImageMagick, но я не могу понять проблему:
C:tmp>convert -size 8x16 -stroke black -fill black -draw "rectangle 0,0,8,16" black.png
Magick: missing an image filename `black.png' @ error/convert.c/ConvertImageComm
and/3016.
Ответ №1:
Очевидно, что может быть больше опций, таких как границы и т. Д., Но если вам просто нужно изображение шириной x высотой заданного шестнадцатеричного цвета, это довольно просто.
Вот все, что нужно, чтобы сделать изображение размером 100×100 сплошного темно-красного цвета:
convert -size 100x100 xc:#990000 whatever.png
Комментарии:
1. Это ярлык для цветовых кодов. Вы можете поместить туда hex, rgb () или даже название цвета. Я, честно говоря, не уверен, что это означает. Дополнительная информация: imagemagick.org/script/color.php
2. Вы также можете использовать значения rgba
convert -size 100x100 xc:rgba(255,0,0,0.4) whatever.png
3. Это то, что мне нравится в инструментах unix. Я собирался создать для этого программу на python, но потом вспомнил imagemagick. Ничто не сравнится с однострочным bash
4.
xc:#...
Это формат псевдоизображения; псевдоним дляcanvas:#...
— посмотрите раздел «Форматы псевдоизображений» imagemagick.org/script/formats.php5. В Unix-подобных системах шестнадцатеричные цвета и цвета rgb (…) должны быть заключены в кавычки.
Ответ №2:
Обратите внимание, что для значений rgb и rgba вам нужно избегать круглых скобок. Опираясь на @Mike Flynn и @luk3thomas (которые правильно избегают цветового кода):
convert -size 100x100 xc:rgb(0,255,0) whatever.png
convert -size 100x100 xc:rgba(0,255,0, 0.4) whatever.png
Комментарии:
1. Или цитата :
convert -size 100x100 'xc:rgb(0,255,0)' whatever.png
илиconvert -size 100x100 "xc:rgb(0,255,0)" whatever.png
.
Ответ №3:
В Mac
convert -size 100x100 xc:"#8a2be2" blue@2x.png