<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://wiki2.linuxformat.ru/skins/common/feed.css?97"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF116%3AImageMagick</id>
		<title>LXF116:ImageMagick - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wiki2.linuxformat.ru/index.php?action=history&amp;feed=atom&amp;title=LXF116%3AImageMagick"/>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF116:ImageMagick&amp;action=history"/>
		<updated>2026-05-13T20:59:24Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.11.1</generator>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF116:ImageMagick&amp;diff=9701&amp;oldid=prev</id>
		<title>Crazy Rebel в 08:44, 16 февраля 2010</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF116:ImageMagick&amp;diff=9701&amp;oldid=prev"/>
				<updated>2010-02-16T08:44:45Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;

			&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;tr&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Версия 08:44, 16 февраля 2010&lt;/td&gt;
			&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Строка 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Волшебная палочка для ваших снимков==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Волшебная палочка для ваших снимков==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;{{Цикл/ImageMagick}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;: Великий Бетховен был, как известно, глух, но это не мешало ему писать гениальную музыку. А можно ли обработать вслепую несколько тысяч изображений? '''Александру Берберу''' и ''ImageMagick'' это по силам!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;: Великий Бетховен был, как известно, глух, но это не мешало ему писать гениальную музыку. А можно ли обработать вслепую несколько тысяч изображений? '''Александру Берберу''' и ''ImageMagick'' это по силам!&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	<entry>
		<id>http://wiki2.linuxformat.ru/index.php?title=LXF116:ImageMagick&amp;diff=9610&amp;oldid=prev</id>
		<title>Crazy Rebel: Викификация, оформление, иллюстрация</title>
		<link rel="alternate" type="text/html" href="http://wiki2.linuxformat.ru/index.php?title=LXF116:ImageMagick&amp;diff=9610&amp;oldid=prev"/>
				<updated>2010-02-01T08:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Викификация, оформление, иллюстрация&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая статья&lt;/b&gt;&lt;/p&gt;&lt;div&gt;: '''ImageMagick''' Мощный графический редактор без GUI&lt;br /&gt;
&lt;br /&gt;
==Волшебная палочка для ваших снимков==&lt;br /&gt;
&lt;br /&gt;
: Великий Бетховен был, как известно, глух, но это не мешало ему писать гениальную музыку. А можно ли обработать вслепую несколько тысяч изображений? '''Александру Берберу''' и ''ImageMagick'' это по силам!&lt;br /&gt;
&lt;br /&gt;
Здравствуйте! Сегодня мы поговорим о консольном графическом редакторе ''ImageMagick'' (''IM''). Если словосочетание «консольный графический редактор» ввергает вас в шок,&lt;br /&gt;
расслабьтесь: ''ImageMagick'' прекрасно справляется с поставленными ему задачами и умеет ничуть не меньше, чем его именитые графические коллеги. С помощью ''IM'' можно создавать полноценные 3D-изображения, анимированные картинки, надписи, логотипы, аатары, и это – далеко не полный список его возможностей. Если вы увлекаетесь фотографией и любите выгружать снимки в Интернет, чтобы поделиться ими с друзьями и близкими, ''IM'' станет вам незаменимым помощником. Благодаря своей простоте, он сэкономит вам кучу времени, а то и денег.&lt;br /&gt;
&lt;br /&gt;
На этом уроке мы изучим, как выполнять различные операции над изображениями с использованием командной строки. Я занимаюсь этим достаточно часто: у меня несколько цифровых камер и несколько десятков гигабайт фотографий на жестком диске. А для web-разработчиков и администраторов, которые нередко работают с большим количеством изображений, инструменты командной строки являются особенно привлекательным вариантом, так как их можно включать в разнообразные сценарии.&lt;br /&gt;
&lt;br /&gt;
Чтобы установить программу (в дистрибутивах на основе Debian), наберите в консоли:&lt;br /&gt;
&lt;br /&gt;
 # sudo aptitude install imagemagick&lt;br /&gt;
&lt;br /&gt;
Если вы – приверженец сборки из исходных текстов, загрузить их можно с http://www.ImageMagick.org; там же находится и инструкция по установке.&lt;br /&gt;
&lt;br /&gt;
Пакет ''ImageMagick'' состоит из целого ряда программ: ''display, animate, identify, convert, montage, mogrify'' и ''composite'', каждая из которых отвечает за выполнение тех или иных задач. Наиболее популярными и часто используемыми утилитами являются ''convert, composite, montage'' и ''import''. В этой статье мы рассмотрим первую из них – всемогущую ''convert'' – и остановимся на некоторых ее возможностях.&lt;br /&gt;
&lt;br /&gt;
===Миниатюрное создание===&lt;br /&gt;
&lt;br /&gt;
Для начала, разберемся с миниатюрами. Многие web-ресурсы ограничивают размер выгружаемых изображений, а открывать для целей масштабирования полновесное графическое ПО –&lt;br /&gt;
излишняя трата ресурсов.&lt;br /&gt;
&lt;br /&gt;
{{Врезка|Содержание=[[Изображение:LXF116_74_1.jpg| 300px| Рис. 1]] Рис. 1. Этих пингвинов нужно сделать поменьше..| Ширина=300px}}&lt;br /&gt;
&lt;br /&gt;
Давайте представим, что мы хотим сделать мини-копию довольно приятного изображения с пингвинами, выложенного пользователем gripso_banana_prune на Flickr.com (рис. 1).&lt;br /&gt;
&lt;br /&gt;
Для этого нам понадобиться утилита ''convert'' с опцией '''-sample'''. Например, чтобы получить изображение размером 350 x 300 пикселей, достаточно ввести команду:&lt;br /&gt;
&lt;br /&gt;
 # convert -sample 350x300 penguin.jpg spenguin.jpg&lt;br /&gt;
&lt;br /&gt;
где '''penguin.jpg''' – входящие изображение, а '''spenguin.jpg''' – файл, получаемый на выходе утилиты ''convert''.&lt;br /&gt;
&lt;br /&gt;
Стоит отметить, что умный ''ImageMagick'' умеет автоматически соблюдать соотношение сторон изображения. Это означает, что пропорции новой картинки (созданной вами миниатюры) будут правильными. В приведенном выше примере, мы фактически получили 350 x 263 пикселей вместо запрашиваемых 350 x 300, а объем файла составил всего 16,4 КБ. При этом качество изображения осталось по-прежнему удовлетворительным.&lt;br /&gt;
&lt;br /&gt;
Другой, не менее интересный способ указания размеров выходного изображения – проценты. Это может быть удобно, если вы не уверены в размере входящего изображения, или если вам важен не точный размер, а только приблизительные габариты. Например, чтобы уменьшить картинку в 4 раза, можно поступить так:&lt;br /&gt;
&lt;br /&gt;
 # convert -sample 25%x25% penguin.jpg spenguin.jpg&lt;br /&gt;
&lt;br /&gt;
Утилита ''convert'' сгенерирует изображение размером 25% от исходного. Поиграв с процентами и пикселями, вы сможете получить результат, которым останетесь довольны.&lt;br /&gt;
&lt;br /&gt;
Увязав то, что мы уже изучили, со сценариями оболочки, можно легко создать скрипт, создающий миниатюры всех снимков ('''*.jpg''') в текущем каталоге:&lt;br /&gt;
&lt;br /&gt;
 for i in `ls *.jpg`&lt;br /&gt;
 do&lt;br /&gt;
   convert -sample 25%x25% $i thumb-$i&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
{{Врезка| Заголовок=Скорая помощь|Содержание=Объединив ''ImageMagick'' с утилитой ''find'', вы получите еще более мощный комбайн для обработки ваших изображений.| Ширина=200px}}&lt;br /&gt;
&lt;br /&gt;
Поднакопив некоторое количество таких мини-сценариев, вы сможете использовать их ежедневно, даже не задумываясь о том, что внутри. Решение типичных задач сведется к паре-тройке нажатий на клавиши, и ''ImageMagick'' будет управляться с работой,&lt;br /&gt;
пока вы попиваете утренний кофе.&lt;br /&gt;
&lt;br /&gt;
===Аватара для автора===&lt;br /&gt;
&lt;br /&gt;
В предыдущем примере мы рассмотрели, как создать уменьшенную (но в остальном точную) копию исходного изображения. Разовьем идею: украсим картинку парочкой несложных эффектов, чтобы придать ему модный вид.&lt;br /&gt;
&lt;br /&gt;
И первое, что мы можем сделать, это вписать наше изображение в приятную полупрозрачную рамку с легким эффектом трехмерности Применим к нашей миниатюре следующую команду:&lt;br /&gt;
&lt;br /&gt;
 # convert +raise 10x10 spenguin.jpg rpenguin.jpg&lt;br /&gt;
&lt;br /&gt;
Этот эффект показался мне интересным, так как появившийся рамка абсолютно ненавязчива и только украшает изображение, а не делает его аляповатым. Размер рамки контролируется значением параметра (10 x 10): чем больше число, тем толще рамка.&lt;br /&gt;
&lt;br /&gt;
Наше изображение по своей природе является фотоснимком, а на фотографиях принято ставить место и дату съемки. Давайте сделаем это, нанеся на картинку водяной знак. Чтобы добавить на изображение текст, достаточно выполнить команду:&lt;br /&gt;
&lt;br /&gt;
 # convert -font helvetica -fill white -pointsize 26 \-draw 'text 180,30&lt;br /&gt;
 &amp;quot;Alaska, 2002&amp;quot;' spenguin.jpg com_pinguin.jpg&lt;br /&gt;
&lt;br /&gt;
Что это за магические числа в параметре '''-draw 'text 180,30...'''? Это – координаты подписи на рисунке в формате '''x,y''', где '''x''' – смещение от левого края, а''' y''' – от верхней грани (в пикселях). &lt;br /&gt;
&lt;br /&gt;
{{Врезка|Содержание=[[Изображение:LXF116_75_1.jpg| 300px| Рис. 2]] Рис. 2. Кто бы мог подумать, что еще в 2002 году на Аляске можно было встретить пингвинов? Так и рождаются сенсации.| Ширина=300px}}&lt;br /&gt;
&lt;br /&gt;
Следующим и финальным шагом будет выполнение команды, которая внесет последний штрих, то есть придаст картинке вид фотокарточки. Результат можно увидеть на рис. 2:&lt;br /&gt;
&lt;br /&gt;
 # convert -caption '%c' com_pinguin.jpg -thumbnail '900x900&amp;gt;' \&lt;br /&gt;
 -font Ravie -gravity center -bordercolor Lavender \&lt;br /&gt;
 -background navy -polaroid -0 final.png&lt;br /&gt;
&lt;br /&gt;
Конечно, вы можете немного поэкспериментировать, проявив всю вашу фантазию и смекалку, и добиться куда более интересных эффектов. ''ImageMagick'' дает воистину бесконечные возможности и вариативность. Остается только ими воспользоваться.&lt;br /&gt;
&lt;br /&gt;
===Немного о главном===&lt;br /&gt;
&lt;br /&gt;
Эффекты, масштабирование и водяные знаки – все это прекрасно, но истинная мощь ''ImageMagick'' проявляется при групповой обработке изображений. Мы уже кратко коснулись этого вопроса выше, при создании миниатюры, а сейчас давайте рассмотрим его более подробно.&lt;br /&gt;
&lt;br /&gt;
Представим на секунду, что вы увлекаетесь фотографией (а кто ею не увлекается?) и являетесь счастливым обладателем цифровой фотокамеры с разрешением в 10–12 МПикс. Вы любите фотографировать все, что придется: домашних животных, друзей, закаты... себя, в конце концов! Помимо этого, вы имеете web-страничку или ведете блог, где публикуете отснятое: приятно поделиться эмоциями со всем миром. Но что делать, если почти все ваши фотографии получаются на «отлично», и все их непременно нужно выгрузить? Ведь каждый снимок – это 3–5 МБ; выкладывая такое в Сеть, вы потеряете кучу времени, да еще и забьете под завязку жесткий диск. Вот тут-то и придет на помощь всемогущий ''convert'', который избавит вас от масштабирования каждой фотографии в графическом редакторе.&lt;br /&gt;
&lt;br /&gt;
Когда я только познакомился с ''GIMP'', я радовался тому, как легко и просто в нем изменить размер изображения с 3022 х 2304 на 800 х 600, сохранив при этом качество и «облегчив» картинку с 4 до 0,5 МБ. Но когда встала задача изменения размеров 3500 изображений, от радости не осталось и следа. ''ImageMagick'' со своей утилитой ''convert'' оказался здесь как нельзя более кстати. Выполнив команду&lt;br /&gt;
&lt;br /&gt;
 # convert -resize 1024 -quality 90 input.jpg output.jpg&lt;br /&gt;
&lt;br /&gt;
вы получите изображение с разрешением 1024 x 768 (помните, что ''convert'' – умная утилита и учитывает соотношение сторон, не «ломая» картинку) и объемом всего 254 КБ. Само собой, выполнять эту команду для каждой отдельно взятой фотографии – не самое большое удовольствие, поэтому я написал простенький сценарий, который полностью автоматизирует этот процесс для всех изображений с разрешением '''.jpg''' в текущей директории (именно этот формат присущ большинству современных цифровых фотоаппаратов). Я также задействовал утилиту ''composite'', для наложения на наши фотографии водяного знака.&lt;br /&gt;
&lt;br /&gt;
Основная часть сценария выглядит так (полный текст вы найдете на LXFDVD):&lt;br /&gt;
&lt;br /&gt;
 WATERMARK=&amp;quot;/home/booch/w.png&amp;quot;&lt;br /&gt;
 for i in *.JPG&lt;br /&gt;
 do&lt;br /&gt;
   echo &amp;quot;Working on $i ...&amp;quot;&lt;br /&gt;
   convert -resize 1024 -quality 89 $i $i 2&amp;gt; /dev/null&lt;br /&gt;
   composite -gravity southeast -dissolve 75 $WATERMARK $i $i 2&amp;gt; /&lt;br /&gt;
 dev/null&lt;br /&gt;
 done&lt;br /&gt;
&lt;br /&gt;
Принцип работы предельно прост. В переменной '''WATERMARK''' указан путь, где лежит картинка, которую мы будем использовать в качестве водяного знака (ключ '''-dissolve 75''' в вызове ''composite'' указывает на желаемую степень прозрачности). Запустив скрипт&lt;br /&gt;
в текущем каталоге, вы выполните масштабирование всех JPG-файлов до 1024 x 768 с качеством 90 и прикрепите водяной знак в левом нижнем углу ('''southeast''').&lt;br /&gt;
&lt;br /&gt;
В итоге, операция по изменению больших массивов изображений сводится к банальному запуску скрипта в текущей директории. Учтите, что процесс этот весьма ресурсоемок и при значительном числе фотографий может занять долгое время. Но вы сами при этом будете абсолютно свободны и, пока работает скрипт, сможете успеть сделать что-нибудь другое, значительно более творческое. '''LXF'''&lt;br /&gt;
&lt;br /&gt;
===Хотите знать больше?===&lt;br /&gt;
&lt;br /&gt;
Желаете скруглить углы или поместить снимок в рамку «под дерево»? Нет ничего проще – заходите на  http://www.linuxformat.ru/mag/im.txt&lt;/div&gt;</summary>
		<author><name>Crazy Rebel</name></author>	</entry>

	</feed>