您的位置:首页 > 其它

图片格式转换之ImageMagick

2016-04-20 12:53 351 查看
项目中需要实现一些图片文件到TIFF文件的转换,去网上下载了一些第三方软件。

好的软件需要收费,免费的存在各种问题。

自己动手,丰衣足食!

众里寻他千百度,蓦然回首,那人就是ImageMagick。

官网链接:http://www.imagemagick.org/script/index.php

ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, TIFF, DPX, EXR, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.


以上的话引用自官网,强大的让人心跳,而且是开源的!感谢开源!感谢Linux!

一、下载源码。

二、执行./configure,发现不支持PDF转换,缺少库的支持。

1. pdf库:ftp://ftp.gnu.org/gnu/ghostscript
2. 编译pdf库,提示lcms版本过旧
3. lcms库:http://www.littlecms.com/index.html
4. 编译lcms2库,通过。
5. 编译pdf库,通过。

一个小插曲:ghostscript编译不出so文件。
解决办法:make so && make soinstall,搞定。


三、后来发现一个更棒的下载依赖库的地方。

http://www.imagemagick.org/download/delegates/

这是官网提供的库。

四、重新./configure,编译,安装。

Delegate Library Configuration:
BZLIB             --with-bzlib=yes        no
Autotrace         --with-autotrace=no        no
DJVU              --with-djvu=yes        no
DPS               --with-dps=yes        no
FFTW              --with-fftw=yes        no
FlashPIX          --with-fpx=yes        no
FontConfig        --with-fontconfig=yes    no
FreeType          --with-freetype=yes        yes
Ghostscript lib   --with-gslib=no        no
Graphviz          --with-gvc=yes        no
JBIG              --with-jbig=yes        no
JPEG v1           --with-jpeg=yes        yes
LCMS              --with-lcms=yes        no
LQR               --with-lqr=yes        no
LTDL              --with-ltdl=yes        no
LZMA              --with-lzma=yes        no
Magick++          --with-magick-plus-plus=yes    yes
OpenEXR           --with-openexr=yes        no
OpenJP2           --with-openjp2=yes        no
PANGO             --with-pango=yes        no
PERL              --with-perl=no        no
PNG               --with-png=yes        yes
RAQM              --with-raqm=yes        no
RSVG              --with-rsvg=no        no
TIFF              --with-tiff=yes        yes
WEBP              --with-webp=yes        no
WMF               --with-wmf=yes        no
X11               --with-x=            yes
XML               --with-xml=yes        yes
ZLIB              --with-zlib=yes        yes


configure执行完毕,大致看到这样的信息,yes就意味着已经支持的文件或者库格式。

no就是缺少相关库的支持或者信息,还有一个原因,编译开关未打开。

例如安装gslib库以后,./configure --with-gslib才能增加对pdf的处理支持。

五、简单的测试。

convert apple.jpg apple.png


这就实现了jpg图片到png图片格式的转换!

对于非图像领域的工作者来讲,能这样转换就足够了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: