2013-06-28 19 views
4

Я пытаюсь преобразовать изображение в формате SVG в WMF с помощью PHP и Imagick под Linux. Я могу конвертировать изображения из SVG в PNG успешно, но не из SVG в WMF. Я не получаю ошибок PHP, всего лишь NULL-изображение. Я подозреваю, что у меня может быть проблема установки/конфигурации, потому что, когда я пытаюсь использовать команду ImageMagick 'convert', я получаю следующую ошибку.Невозможно преобразовать SVG в WMF с Imagemagick

> convert image.svg image.wmf 
convert: no encode delegate for this image format `image.wmf' @ constitute.c/WriteImage/1114. 

Однако, WMF делегат, кажется, correclty зарегистрировано

> convert -list configure 
Path: /usr/lib64/ImageMagick-6.5.4/config/configure.xml 
Name   Value 
------------------------------------------------------------------------------- 
CC   gcc -std=gnu99 
CFLAGS  -fopenmp -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wall -W -pthread 
CONFIGURE  ./configure '--build=x86_64-redhat-linux-gnu' '--host=x86_64-redhat-linux-gnu' '--target=x86_64-redhat-linux-gnu' '--program-prefix=' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib64' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--enable-shared' '--disable-static' '--with-modules' '--with-perl' '--with-x' '--with-threads' '--with-magick_plus_plus' '--with-gslib' '--with-wmf' '--with-lcms' '--with-rsvg' '--with-xml' '--with-perl-options=INSTALLDIRS=vendor CC='\''gcc -L/builddir/build/BUILD/ImageMagick-6.5.4-7/magick/.libs'\'' LDDLFLAGS='\''-shared -L/builddir/build/BUILD/ImageMagick-6.5.4-7/magick/.libs'\''' '--without-dps' '--without-included-ltdl' '--with-ltdl-include=/usr/include' '--with-ltdl-lib=/usr/lib64' 'build_alias=x86_64-redhat-linux-gnu' 'host_alias=x86_64-redhat-linux-gnu' 'target_alias=x86_64-redhat-linux-gnu' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' 'CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' 
COPYRIGHT  Copyright (C) 1999-2009 ImageMagick Studio LLC 
CPPFLAGS  -I/usr/include/ImageMagick 
CXX   g++ 
CXXFLAGS  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wall -W -pthread 
DEFS   -DHAVE_CONFIG_H 
DELEGATES  bzlib fontconfig freetype gs jpeg jng jp2 lcms png rsvg tiff x11 xml wmf zlib 
DISTCHECK_CONFIG_FLAGS 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic' --disable-deprecated --with-quantum-depth=16 --with-umem=no --with-autotrace=no --with-dps=no --with-fontpath= 
EXEC-PREFIX /usr 
HOST   x86_64-redhat-linux-gnu 
LDFLAGS  -L/usr/lib64 -lfreetype 
LIB_VERSION 0x654 
LIB_VERSION_NUMBER 6,5,4,7 
LIBS   -lMagickCore -llcms -ltiff -lfreetype -ljpeg -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lm -lgomp -lpthread -lltdl 
NAME   ImageMagick 
PCFLAGS  -fopenmp 
PREFIX  /usr 
QuantumDepth 16 
RELEASE_DATE 2012-05-07 
VERSION  6.5.4 
WEBSITE  http://www.imagemagick.org 

Любая идея, что может быть проблема?

+0

Я не знаю, как заставить ImageMagick работать для этого, но я успешно использовал inkscape в интерактивном режиме (например, inkscape -g foo.svg) для сохранения SVG-файла в формате WMF. – Eric

+0

Чтобы следить за моим предыдущим комментарием, если вы хотите сделать преобразование неинтерактивным способом, inkscape использует uniconverter внутри, но вы можете запустить это прямо: uniconverter image.svg image.wmf – Eric

ответ

1

Если вы хотите конвертировать в WMF, вам необходимо установить библиотеку libwmf. Если вы уже установили его, вам нужно указать его как один из дополнительных модулей. WMF активируется только в том случае, если вы укажете --with-modules в командной строке сценария configure.