Ошибка преобразования GraphicsMagick для fig в jpg

Я пытаюсь преобразовать файлы fig в jpg, используя GraphisMagick/ImageMagick. Когда я пытаюсь выполнить базовую команду «gm convert input.fig output.jpg», она не работает с приведенным ниже сообщением об ошибке. GraphisMagick - gm convert: Неподдерживаемый тип ячейки в матрице (input.fig). ImageMagick - преобразовать: UnsupportedCellTypeInTheMatrix `input.fig' @ error/mat.c/ReadMATImage/838. fig2dev (Transfig) — поддерживает чтение файла fig в imagemagick. Как я могу проверить, есть ли у меня эта библиотека? если библиотека недоступна, как я могу ее включить. Я установил grahicsmagick (1.3.25) и imagemagick (6.9.3-0), используя установку yum на машине unix.


person Community    schedule 19.06.2017    source источник
comment
Не могли бы вы просветить меня, что такое файл fig? Откуда он берется - какое приложение его создает?   -  person Mark Setchell    schedule 19.06.2017
comment
я надеюсь, файл fig - это векторные изображения. Эти файлы уже доступны для нашего приложения. Надеюсь, Matlab или какой-то инструмент сгенерировал это.   -  person    schedule 19.06.2017
comment
identify -list delegate | grep fig должен сообщить вам, поддерживает ли ImageMagick файлы fig. Мой говорит, что будет использовать uniconvertor   -  person Mark Setchell    schedule 19.06.2017
comment
FIG R Графический формат FIG Требуется TransFig.   -  person    schedule 19.06.2017
comment
идентифицировать -список делегатов | grep fig fig =› uniconvertor %i %o.svg; мв %o.svg %о   -  person    schedule 19.06.2017
comment
Вы можете увидеть, знает ли ваша система о файлах fig, по формату convert -list. Если FIG нет в списке, значит, ImageMagick не знает об этом, или вы не установили нужный делегат должным образом или где ImageMagick может его найти.   -  person fmw42    schedule 19.06.2017
comment
преобразовать -формат списка | grep -i рис. Возвратите пустой результат. Как добавить делегата fig в imagemagick. Кто-нибудь знает, как включить библиотеки fig в imagemagick?   -  person    schedule 20.06.2017
comment
Не могли бы вы предоставить образец fig файла, пожалуйста?   -  person Mark Setchell    schedule 20.06.2017


Ответы (1)


Я никогда не слышал о формате файла fig, но некоторые поиски в Google говорят мне, что есть 2 возможности: либо проприетарный формат Matlab, либо векторные файлы, связанные с пакетом рисования xfig.

Я предполагаю, сформируйте сообщения об ошибках, которые ImageMagick считает вашими прежними, Matlab, вариантами и недоволен их чтением, поэтому я решил попробовать и прочитать другой тип.

Поскольку вы не предоставили образец, я понимаю, что potrace может создать fig файлов, поэтому я создал образец файла PNG и передал его (как файл PNM) в potrace. и сделал файл fig:

введите здесь описание изображения

convert start.png pnm: | potrace --backend xfig - > file.fig

Этот файл (file.fig) выглядит так:

#FIG 3.2
#created by potrace 1.14, written by Peter Selinger 2001-2017
Portrait
Center
Inches
Letter
100.0
Single
-2
1200 2
0 32 #000000
0 33 #ffffff
6 1125 5286 9075 7913
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 5385
1264 5513
8936 5513
8936 5385
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 5641
1264 5769
8936 5769
8936 5641
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 5897
1264 6025
8936 6025
8936 5897
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 6152
1264 6280
8936 6280
8936 6152
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 6408
1264 6536
8936 6536
8936 6408
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 6664
1264 6792
8936 6792
8936 6664
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 6920
1264 7048
8936 7048
8936 6920
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 7175
1264 7303
8936 7303
8936 7175
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 7431
1264 7559
8936 7559
8936 7431
0
0
0
0
3 1 0 0 0 32 50 0 20 0.000 0 0 0 4
1264 7687
1264 7815
8936 7815
8936 7687
0
0
0
0
-6

Итак, теперь мы находимся там, где были бы, если бы вы предоставили образец файла! И мы можем перейти к ответу...

Вы можете преобразовать файл fig в JPEG, даже не нуждаясь в ImageMagick, например:

fig2dev -L jpeg file.fig result.jpg

введите здесь описание изображения

Вы можете преобразовать файл fig, как показано выше, в PNG следующим образом:

 fig2dev -L png file.fig result.png
person Mark Setchell    schedule 20.06.2017
comment
Спасибо за подробный ответ. fig2dev решит проблему, но я не смог установить fig2dev. По умолчанию imagemagick не поставляется с fig2dev. Не могли бы вы дать мне команды для установки fig2dev (самостоятельно или с помощью imagemagick) в Unix или Mac. - person ; 22.06.2017
comment
я следил за mcj.sourceforge.net/installation.html#install-transfig статья по установке fig2dev, которая не увенчалась успехом. - person ; 22.06.2017
comment
Я установил его с помощью homebrew — отличного менеджера пакетов для macOS, если вы его еще не используете. Если у вас есть homebrew, команда просто brew install transfig. - person Mark Setchell; 22.06.2017
comment
Mac выдает следующую ошибку. Ошибка: Нет доступной формулы с именем transfig ==> Поиск ранее удаленной формулы... Предупреждение: homebrew/core — это неглубокий клон. Чтобы получить полную историю, выполните: git -C $(brew --repo homebrew/core) fetch --unshallow Ошибка: ранее удаленная формула не найдена. ==› Поиск формул с похожими названиями... Ошибка: Формулы с похожими названиями не найдены. ==› Поиск кранов... Ошибка: Формулы в кранах не найдены. - person ; 22.06.2017
comment
Есть ли способ добавить fig2dev или transfig в качестве делегата в imagemagick? - person ; 22.06.2017
comment
Ваша установка доморощенного звучит не очень хорошо! Я понятия не имею, что пошло не так с ним. Вы пробовали brew update, brew upgrade и brew doctor? - person Mark Setchell; 22.06.2017