Если ваша сборка Emacs поддерживает ImageMagick, вы можете использовать библиотеку ImageMagick для загрузки многих форматов изображений (см. Удобства работы с файлами в Руководство GNU Emacs). Символ типа изображения для изображений, загруженных через ImageMagick, — imagemagick, независимо от фактического базового формата изображения.
Чтобы проверить поддержку ImageMagick, используйте следующее:
(image-type-available-p 'imagemagick)
Эта функция возвращает список расширений файлов изображений, поддерживаемых текущей установкой ImageMagick. Каждый элемент списка — это символ, представляющий внутреннее имя ImageMagick для типа изображения, например BMP для изображений .bmp.
Значение этой переменной — это список типов изображений ImageMagick, которые Emacs может попытаться отобразить с помощью ImageMagick. Каждый элемент списка должен быть одним из символов в списке, возвращаемом imagemagick-types, или эквивалентной строкой. Альтернативно, значение t включает ImageMagick для всех возможных типов изображений. Независимо от значения этой переменной, imagemagick-types-inhibit (см. ниже) имеет приоритет.
Значение этой переменной перечисляет типы изображений ImageMagick, которые никогда не должны отображаться с помощью ImageMagick, независимо от значения imagemagick-enabled-types. Значение t полностью отключает ImageMagick.
Эта переменная — это alist, сопоставляющий типы изображений с расширениями имен файлов. Emacs использует это вместе с свойством изображения :format (см. ниже), чтобы дать подсказку библиотеке ImageMagick о типе изображения. Каждый элемент имеет вид (type extension), где type — это символ, указывающий тип содержимого изображения, а extension — это строка, указывающая соответствующее расширение имени файла.
Изображения, загруженные с поддержкой ImageMagick, поддерживают следующие дополнительные свойства дескриптора изображения:
:background backgroundbackground, если не nil, должна быть строкой, указывающей цвет, который используется в качестве фонового цвета изображения, если изображение поддерживает прозрачность. Если значение равно nil, по умолчанию используется фоновый цвет рамки.
:format typeЗначение, type, должно быть символом, указывающим тип данных изображения, как указано в image-format-suffixes. Это используется, когда изображение не имеет связанного имени файла, чтобы дать подсказку ImageMagick для помощи в определении типа изображения.
:crop geometryЗначение geometry должно быть списком вида (width height x y). width и height указывают ширину и высоту обрезанного изображения. Если x — положительное число, оно указывает смещение обрезанной области от левого края исходного изображения, а если отрицательное — от правого. Если y — положительное число, оно указывает смещение от верхнего края исходного изображения, а если отрицательное — от нижнего. Если x или y равны nil или не указаны, область обрезки будет центрирована на исходном изображении.
Если область обрезки находится за пределами изображения или перекрывает его край, она будет уменьшена, чтобы исключить любые области за пределами изображения. Это означает, что невозможно использовать :crop для увеличения размера изображения путем ввода больших значений width или height.
Обрезка выполняется после масштабирования, но до поворота.