2010-04-16 2 views
29

У кого-нибудь есть указатели на получение изображений PNG для отображения в Emacs 23 под Win32? .. Я установил набор утилит gnuwin32, включая libpng и zlib; C: \ Program Files \ GnuWin32 \ bin находится в пути. Файлы JPG начали работать, но не PNG. Я был бы признателен за любые намеки на то, чтобы это работало.Emacs под Windows и PNG файлы

EDIT: миниатюры PNG на самом деле отображают тонкие изображения (например, через C-t C-t). Однако открытие их сбоев (открывается как мусор в основном режиме, а M-x режим изображения говорит «недопустимая спецификация изображения»).

ответ

20

Вам необходимо скопировать одну из этих dlls "libpng12d.dll" "libpng12.dll" "libpng.dll" "libpng13d.dll" "libpng13.dll" в каталог emacs-23.1/bin /. Им нужен zlib1.dll, который вы также должны скопировать. Я сделал то же самое для jpeg62.dll и giflib4.dll, и теперь мои emacs поддерживают файлы jpg, gif и png. По какой-то причине это не работает, если я просто поместил эти DLL в путь.

Вы можете проверить (image-type-available-p 'png), чтобы узнать, поддерживается ли png. image-library-alist отображает тип изображения в список DLL, которые его поддерживают.

+0

Копирование libpng и zlib dll в C: \ Emacs \ emacs-23.1 \ bin работало! (Наличие jpeg62.dll в пути было достаточным для JPEG-файлов.) –

+2

libPng и Zlib можно загрузить со страницы GnuWin32 по адресу http://gnuwin32.sourceforge.net/packages.html. –

+2

Обратите внимание, что [GNU Win32 project] (http://gnuwin32.sourceforge.net) имеет только libpng13, тогда как [libpng14 доступен из GTK +] (http://www.gtk.org/download/win32.php) (ищите run-rime в нижней части). – mlt

5

Согласно официальному руководству:

3.3 Как получить поддержку изображения?

Emacs имеет встроенную поддержку изображений XBM и PBM/PGM/PPM. Этого достаточно, чтобы увидеть монохромные заставки и значки инструментов. Начиная с 22.2, официальные предварительно скомпилированные двоичные файлы для Windows содержат пакет libXpm, который требуется для отображения цветовых версий этих изображений.

Emacs скомпилирован для распознавания изображений JPEG, PNG, GIF и TIFF, но для отображения этих типов изображений требуются внешние DLL-файлы, которые не входят в состав Emacs. См. Другие полезные порты.

Эти DLL-файлы для различных форматов изображений (насколько я знаю) - XPM (xpm4.dll), PNG (libpng13.dll, zlib1.dll), JPEG (jpeg62.dll), TIFF (libtiff3.dll) и GIF (giflib4.dll);

1

Для отображения какой версии PNG DLL ваш Emacs для версии Windows, требуется, вы можете оценить (cdr (assq 'png dynamic-library-alist))

1

Начиная с Emacs 25 Emacs Windows download directory включает -deps почтовые пакеты, которые могут быть извлечены в папку установки Emacs и включают изображение библиотеки для PNG, SVG, JPEG, GIF, TIFF и многое другое.

См. Также emacs.stackexchange answer.

Смежные вопросы