首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 平面设计 > 图形图像 >

JMagick+ImageMagic处置图片(高质量)

2012-07-23 
JMagick+ImageMagic处理图片(高质量)项目需要简单处理一些用户上传的图片,如缩略图、剪切、旋转、水印等。试过

JMagick+ImageMagic处理图片(高质量)

项目需要简单处理一些用户上传的图片,如缩略图、剪切、旋转、水印等。试过很多方法,包括STRUS自带的、jimi、jai等,图片质量不能让人满意。面前在试用JMagick+ImageMagic,比较而言生成缩略图已经很好了,将碰到的一些问题总结下,同志们少走点弯路。
1、jmagick下载
最新的地址http://downloads.jmagick.org/
这个地址包含了最新的文档和ImageMagic

2、windows下安装
A、ImageMagick选择独立安装版本如

ImageMagick-6.3.9-0-Q8-windows-dll.exe,jmagick-win-6.3.9-Q8.zip;

两个版本号一定要相同;?
?? 这个一路next;新版本一般都会将安装目录写入环境变量path。保险起见,你可以在装好后检查下。
B、jmagick解压后将jmagick.dll拷入system32下,然后将jmagick.jar放入你项目的WEB-INF\lib下即可。
安装完成
未解决:Q16和Q8在图片质量上有区别?
3、程序中在使用jmagick前写
//Tell jmagick.magick.Magick to not use the system ClassLoader
System.setProperty("jmagick.systemclassloader","no");
4、在ECLIPSE+tomcat下报错,将eclipse下tomcat服务器配置在path中加入jmagick.dll的路径如c:\system32.
这个问题折腾了半天,将JMagick和ImageMagic安装后一直在报错,换了所有的版本都不行,后来无意中直接启动tomcat发现跑起来很顺利,才……?
***测试过程中遇到的一些问题:

1。web应用如果部署到tomcat下,那么最好在catalina.bat文件中改变如下设置

set JAVA_OPTS=%JAVA_OPTS% -Xms256M -Xmx768M -XX:MaxPermSize=128M -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.util.logging.config.file="${catalina.base}\conf\logging.properties"
?避免heap溢出的问题,参数看你自己的机器而定。( -Xms256M -Xmx768M -XX:MaxPermSize=128M )

    ????# ??????#?A?fatal?error?has?been?detected?by?the?Java?Runtime?Environment: ??????# ??????#??EXCEPTION_ACCESS_VIOLATION?(0xc0000005)?at?pc=0x7c9469da,?pid=3192,?tid=3212??????# ??????#?JRE?version:?6.0_20-b02 ??????#?Java?VM:?Java?HotSpot(TM)?Client?VM?(16.3-b01?mixed?mode,?sharing?windows-x86?) ??????#?Problematic?frame: ??????#?C??[ntdll.dll+0x369da] ?

这个异常,我用xp测试的时候出现过;网上的是配置环境的问题:jdk或jmagick版本不同的问题;不过我的都是相同的,也出现这个问题;后来我启动ImageMagick Display程序之后,再运行测试用例时,就没有出现异常了;关于jMagick的例子,网上很多,请自己寻找;

热点排行