Гид по технологиям

Как быстро сжимать и менять размер изображений в Thunar с помощью ImageMagick

• 6 min read • Linux • Обновлено 20 Nov 2025
Сжимать и менять размер изображений в Thunar
Сжимать и менять размер изображений в Thunar

Окно Thunar с интеграцией ImageMagick

Если вы постоянно перекомпрессируете и меняете размер картинок, например, для публикации на блоге с заданным разрешением, имеет смысл превратить процесс в однонажатное действие. Thunar поддерживает внешние команды (Custom Actions), которые принимают путь к выбранному файлу через параметр “%f” — это даёт нам способ вызвать ImageMagick прямо из контекстного меню.

Важно: аналогичный подход применим и к другим «программируемым» файловым менеджерам, например Konqueror или Nautilus с поддержкой скриптов.

Установка Thunar и ImageMagick

Установите Thunar и ImageMagick через пакетный менеджер вашей системы. В Debian-подобных дистрибутивах команда будет выглядеть так:

sudo apt-get install thunar imagemagick

Если вы предпочитаете GUI, используйте центр приложений вашего дистрибутива и найдите пакеты там.

Установка и настройки Thunar

Краткое знакомство с опциями ImageMagick

ImageMagick — мощный инструмент преобразования изображений: изменение размера, перекодировка форматов, фильтры, обрезка и многое другое. Мы сосредоточимся на сжатии и уменьшении разрешения, но на странице Options Summary официальной документации вы найдёте полный список опций, которые можно интегрировать в команду.

Справочные опции ImageMagick

Создайте тестовую папку и скопируйте туда примеры

Никогда не работайте сразу с оригиналами — одна ошибка и файлы могут быть повреждены или утеряны. Создайте тестовую папку (например, в Pictures) и поместите туда несколько изображений для экспериментов. В Thunar щёлкните правой кнопкой в пустой области списка файлов и откройте терминал, чтобы запускать тестовые команды.

Работа с тестовой папкой

Как подобрать оптимальное соотношение качества и сжатия

Каждому нужно своё значение качества: фотография с мягкими градиентами допустит сильнее сжатие, чем скриншот с текстом. Тестируйте на копиях, используя команду:

magick INPUT_FILE -quality QQ OUTPUT_FILE

Где INPUT_FILE — исходный файл, OUTPUT_FILE — результат, а QQ — число от 1 до 100 (чем выше — тем лучше качество и меньшее сжатие). Подберите значение визуально и по размеру файла.

Поиск оптимального качества

Изменение размера и различие между resize и scale

Команда resize позволяет и уменьшать, и увеличивать картинку. Пример:

magick INPUT_FILE -resize 1920x1200 OUTPUT_FILE

По умолчанию ImageMagick сохраняет пропорции: он изменит только одну сторону, чтобы не исказить изображение. Чтобы не масштабировать вверх маленькие картинки (мы обычно этого не хотим при подготовке веб-версий), добавьте символ “>” после разрешения:

magick INPUT_FILE -resize 1920x1200\> OUTPUT_FILE

Символ “>” говорит: менять размер только если изображение больше указанного.

Пример уменьшения изображения

Добавление команды в Thunar как Custom Action

Когда вы нашли подходящее сочетание качества и разрешения, скопируйте рабочую команду и выполните в Thunar: Edit > Configure custom actions …

  • Введите имя действия и, при желании, описание.
  • Вставьте команду в поле Command.
  • Замените путь входного файла на “%f” и путь выходного файла можно сделать как “%f_output” (мы покажем более надёжные варианты ниже).
  • На вкладке Appearance Conditions установите типы файлов «Image Files», чтобы действие показывалось только для изображений.

Простейшая команда, которую можно вставить в поле Command, выглядит так (пример, качество 85 и downscale до 1920x1200):

magick %f -quality 85 -resize 1920x1200\> %f_output.jpg

Нажмите OK — действие сохранится и появится в контекстном меню при правом клике на изображении.

Добавление пользовательского действия

Практический недостаток простого подхода и решение через небольшой скрипт

Thunar не умеет автоматически убирать расширение файла из “%f” и подставлять «basename», поэтому результирующий файл может получиться с двойным расширением, например image.png_output.jpg. Чтобы получить аккуратное имя вида image_output.jpg, используйте короткий shell-скрипт прямо в поле команды Thunar.

Надёжный однострочный вариант для поля Command (поддерживает пробелы в именах файлов):

bash -c 'f="$1"; out="${f%.*}_output.jpg"; magick "$f" -quality 85 -resize 1920x1200\> "$out"' -- %f

Как это работает:

  • bash -c запускает оболочку; первые кавычки содержат скрипт, затем “– %f” передаёт путь к файлу как $1.
  • ${f%.*} — удаляет расширение у файла.

Если вы предпочитаете сохранять формат исходного файла (например, PNG → PNG), можно определить расширение динамически:

bash -c 'f="$1"; ext="${f##*.}"; out="${f%.*}_output.$ext"; magick "$f" -quality 85 -resize 1920x1200\> "$out"' -- %f

Альтернативные подходы

  • Использовать пакетные скрипты: Bash/Python скрипт, который проходит по папке и обрабатывает все файлы массово.
  • GUI-инструменты: GIMP, XnConvert, или специализированные приложения для пакетной обработки.
  • Другие файловые менеджеры: Nautilus (на скриптах Python или Bash), Dolphin (Custom Actions), Ranger (команды в rc.conf).

Кейсы, когда метод не подойдёт

  • Вам нужно точное визуальное качество без артефактов (профильный ретушь) — лучше ручная обработка в редакторе.
  • Форматы с альфа-каналом и требование сохранить прозрачность — JPG не подходит, используйте PNG/WebP с прозрачностью.
  • Метаинформация EXIF: если нужно сохранять или удалять EXIF, добавьте опции ImageMagick (strip, profile и т.д.).

Мини-методология: быстрый рабочий цикл

  1. Скопировать оригиналы в тестовую папку.
  2. Подобрать качество (пара пробных запусков: 90, 85, 75).
  3. Подобрать целевое разрешение (например, 1920×1200, 1280×720, 800×600).
  4. Добавить скрипт в Thunar как Custom Action.
  5. Запускать на выборочных файлах, оценить результат, затем применять в продакшн.

Чеклист для ролей

Для блогера:

  • Проверить читаемость мелкого текста на сжатых изображениях.
  • Установить размер файла под целевую страницу (быстрая загрузка).

Для фотографа:

  • Тестировать разные уровни качества для портретов и пейзажей.
  • Сохранять оригиналы и работать с копиями.

Для системного администратора:

  • Автоматизировать пакетную обработку cron-скриптом для старых материалов.
  • Контролировать права доступа в папках, чтобы скрипты не ломали ACL.

Примеры команд и шаблонов

Сохранение в WebP с контролем качества и только для больших файлов:

bash -c 'f="$1"; out="${f%.*}_webp.webp"; magick "$f" -quality 80 -resize 1920x1200\> "$out"' -- %f

Удаление EXIF и сжатие JPG:

magick INPUT_FILE -strip -quality 85 OUTPUT_FILE.jpg

Пакетная обработка всех изображений в папке (bash из терминала):

for img in *.jpg *.png; do
  [ -f "$img" ] || continue
  magick "$img" -quality 85 -resize 1920x1200\> "${img%.*}_output.jpg"
done

Критерии приёмки

  • Кнопка/пункт меню видим при клике правой кнопкой на изображении.
  • Новый файл создаётся в той же папке и имеет имя *_output.ext без двойных расширений.
  • Размер файла и визуальное качество соответствуют вашим требованиям.

Decision flow (когда выбирать что)

flowchart TD
  A[Нужно уменьшить/сжать?] -->|Да| B{Есть требования к формату}
  B -->|JPG| C[Использовать magick -> JPG]
  B -->|PNG/прозрачность| D[Использовать magick -> PNG/WebP]
  B -->|Сохранить EXIF| E[Не использовать -strip]
  C --> F[Настроить качество и resize>]
  D --> F
  E --> F
  F --> G[Добавить в Thunar как Custom Action]
  A -->|Нет| H[Не изменять]

Глоссарий в одну строку

  • ImageMagick — набор команд для преобразования изображений из командной строки.
  • Thunar — лёгкий файловый менеджер XFCE с поддержкой Custom Actions.
  • %f — параметр Thunar, подставляющий полный путь к выбранному файлу.

Советы и предостережения

  • Всегда тестируйте на копиях.
  • Если вам важно сохранить качество текста на скриншотах, используйте меньшую степень сжатия или другой формат.
  • Обратите внимание на цветовой профиль и ориентацию EXIF — ImageMagick может изменять или удалять метаданные по умолчанию.

Результат выполнения пользовательского действия

Заключение

Настройка одного или нескольких пользовательских действий в Thunar позволяет сэкономить массу времени при подготовке изображений для веба. Начните с простых команд, затем добавьте скрипты для аккуратных имён и дополнительных опций (strip, profile, формат WebP). Через несколько минут работы вы получите удобный рабочий инструмент — ваш правый клик будет делать рутинную работу за вас.

Important: если вам нужно более сложное поведение (например, обработка папок или рекурсивная обработка), лучше вынести логику в отдельный скрипт и вызывать его из Thunar.

Краткая памятка: протестировал — настроил — применил — сохранил оригиналы.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро