Як швидко змінити розмір, конвертувати та змінити зображення з терміналу Linux
ImageMagick - це набір утиліт командного рядка для редагування та роботи з зображеннями. ImageMagick може швидко виконувати операції над зображенням з терміналу, виконувати пакетну обробку багатьох зображень або бути інтегрованим у сценарій bash.
ImageMagick може виконувати широкий спектр операцій. Цей посібник познайомить вас з синтаксисом і основними операціями ImageMagick, а також покаже вам, як поєднувати операції та виконувати пакетну обробку багатьох зображень.
Установка
ImageMagick не входить до стандартної установки Ubuntu та багатьох інших дистрибутивів Linux. Щоб встановити його на Ubuntu, використовуйте таку команду:
sudo apt-get install imagemagick
Перетворення між форматами
Команда convert бере зображення, виконує на ньому дії і зберігає зображення з вказаним ім'ям файлу. Однією з найважливіших речей, які ви можете зробити з нею, є перетворення зображень між форматами. Наступна команда приймає файл PNG з ім'ям “howtogeek.png” у поточному каталозі та створює зображення JPEG з нього:
конвертувати howtogeek.png howtogeek.jpg
Також можна вказати рівень стиснення для зображень JPEG:
конвертувати howtogeek.png -quality 95 howtogeek.jpg
Номер має бути між 1 і 100. ImageMagick використовує рівень якості вхідного зображення, якщо це можливо. Якщо ні, то ImageMagick за замовчуванням дорівнює 92.
Зміна розмірів зображень
Команда convert також може швидко змінити розмір зображення. Наступна команда просить ImageMagick змінити розмір зображення до 200 пікселів завширшки і 100 пікселів у висоту:
convert example.png -resize 200x100 example.png
Тут ми використовували одне і те ж ім'я файлу, тому ImageMagick перезапише вихідний файл.
ImageMagick намагатиметься зберегти співвідношення сторін, якщо ви використовуєте цю команду. Він змінить зображення так, щоб він містився в зоні 200 × 100, але зображення може бути не рівно 200 × 100. Якщо ви бажаєте змусити зображення стати певним розміром - навіть якщо він змінює співвідношення сторін - додайте знак оклику до розмірів:
convert example.png -resize 200x100! example.png
Ви також можете вказати певну ширину або висоту, а ImageMagick змінить розмір зображення на цю ширину або висоту, зберігаючи співвідношення сторін. Наступна команда змінить розмір зображення на ширину 200:
convert example.png -resize 200 example.png
Наступна команда змінить розмір зображення на висоту 100:
convert example.png -resize x100 example.png
Поворот зображення
ImageMagick може швидко повертати зображення. Наступна команда приймає зображення з назвою howtogeek.jpg, повертає його на 90 градусів і зберігає повернене зображення як howtogeek-rotated.jpg:
конвертувати howtogeek.jpg -rotate 90 howtogeek-rotated.jpg
Якщо ви вказали те саме ім'я файлу, ImageMagick збереже повернене зображення над оригінальним файлом зображення.
Застосування ефектів
ImageMagick може застосовувати різноманітні ефекти до зображення. Наприклад, наступна команда застосовує ефект "вугілля" до зображення:
конвертувати howtogeek.jpg -chcoal 2 howtogeek-charcoal.jpg
Команда "Деревне вугілля" застосовує художній "стиль деревного вугілля" до зображення - 2 у команді дозволяє контролювати силу ефекту.
Наступна команда застосовує ефект "Implode" з силою 1:
конвертувати howtogeek.jpg -implode 1 howtogeek-imploded.jpg
Ефект амплітуди змушує його виглядати так, ніби в центрі зображення є чорна діра.
Об'єднання операцій
Всі ці операції можна комбінувати. За допомогою однієї команди можна змінити розмір зображення, повернути його, застосувати ефект і перетворити його в інший формат:
конвертувати howtogeek.png -resize 400x400 -rotate 180 -charal 4 -quality 95 howtogeek.jpg
Це тільки початок того, що ви можете зробити з ImageMagick. Є ще багато операцій, які можна об'єднати.
Пакетна обробка
Ви можете скористатися перевагою Bash, щоб швидко зробити пакетну обробку багатьох зображень. Наприклад, наступна команда приймає всі файли PNG у поточному каталозі, повертає їх і зберігає нову копію кожного з "повернутої", доданої до початку кожного імені файлу.
для файлу в * .png; конвертувати $ file -rotate 90 - $ file; зроблено
Ви можете легко змінити цю команду для виконання інших дій. Ви також можете інтегрувати команди пакетної обробки в скрипт оболонки Bash для автоматизації операцій обробки зображень.
Будь-яка стаття на ImageMagick буде пропущена багато чого, що ви можете зробити з нею - є дуже багато варіантів і команд. Якщо ви зацікавлені в тому, щоб зробити більше з ImageMagick, ознайомтеся з офіційною документацією на веб-сайті ImageMagick для більш глибокого погляду на ImageMagick.