Заметки линукс


Эскизы PSD-файлов Photoshop в Linux

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

Моя инструкция годится для Ubuntu Linux с графической оболочкой Gnome и файловым менеджером Nautilus (то есть то, что у вас присутствует, например, после установки свежей на данный момент Ubuntu 14.10 или 15.04, которая пока в бета-версии). Если у вас другой дистрибутив, то общий принцип останется таким же, только поменяются имена команд и расположение конфигурационных файлов.

Для генерации эскизов возьмём утилиту convert, входящую в состав пакета imagemagick. Если пакет не установлен, поставим его:

% sudo apt-get install imagemagick

После этого команда convert должна работать. Убедимся в этом, спросив версию программы:

% convert --version
Version: ImageMagick 6.7.7-10 2014-08-21 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP

Теперь воспользуемся одной из самых сильных возможностей графической оболочки Линукса — настраиваемыми эскизами. Они есть почти в любом дистрибутиве и файловом менеджере (в данном случае рассматриваем Наутилус).

Для работы эскизов нужно написать свой миниатюрщик (thumbnailer) — команду, которая будет генерировать из входного документа его уменьшенную копию в формате PNG. Создаём файл /usr/share/thumbnailers/photoshop.thumbnailer с содержимым из трёх строк (я добавил поясняющие каждый шаг комментарии):

###
# Запускаем конвертер входного файла %i в эскиз %o формата PNG с максимальным размером %sx%s.
#
# Краткая справка:
#     convert или /usr/bin/convert — имя программы конвертации ImageMagick;
#     %i — сюда система подставляет имя исходного файла;
#     -flatten — слить все слои в один (иначе каждый слой превратится в отдельную картинку);
#     -thumbnail — уменьшить изображение до заданных пределов;
#     %sx%s — предел размера (сюда система подставляет максимальный размер эскизов, например 256x256);
#     png: — выходной формат;
#     %o — сюда система подставляет имя выходного файла;
#     image/vnd.adobe.photoshop;image/psd;image/x-psd — список MIME-типов для файлов Photoshop.
#
# @author MaximAL
# @link http://maximals.ru/notes/2015/03/16/photoshop-psd-thumbs-linux/
# @since 2015-03-16
###

[Thumbnailer Entry]
Exec=/usr/bin/convert %i -flatten -thumbnail %sx%s png:%o
MimeType=image/vnd.adobe.photoshop;image/psd;image/x-psd;

После этого очистим кеш миниатюр и перезапустим файловый менеджер:

rm -rf ~/.cache/thumbnails
nautilus -q

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

Примерно таким же образом можно сделать эскизы для форматов Word, Excel, Libre Office и вообще любых, для которых существует возможность создания картинки из документа.