graphicsmagick im4java,GraphicsMagick+im4java 图片处理
最近團(tuán)隊(duì)內(nèi)部分享GraphicsMagick+im4java 圖片處理 就把如何安裝,運(yùn)行都統(tǒng)一整理一下。
詳細(xì)如下:
在windows上安裝ImageMagick:
關(guān)于Q8,Q16,Q32的說明:(建議使用8,現(xiàn)在數(shù)碼相機(jī)照的相片,每一種顏色就是8位深,3種顏色就是24位,所以選8)
支持的參數(shù)有3種,分別是 8, 16, or 32。默認(rèn)值是16。
Q8表示: 8-bits per pixel quantum
Q16表示:16-bits per pixel quantum
Q32表示:32-bits per pixel quantum
使用16-bit per pixel quantums在處理圖片時(shí)比8-bit慢15%至50%,并須要更多的內(nèi)存。
處理一張1024x768像素的圖片8-bit要使用3.6M內(nèi)存,16-bit要使用7.2M內(nèi)存。計(jì)算方法是: (5 * Quantum Depth * Rows * Columns) / 8
配置 環(huán)境變量加入PATH:E:\Program Files\GraphicsMagick-1.3.18-Q8(個(gè)人習(xí)慣放在E盤)
二. Linux下的安裝與配置(下載時(shí)請(qǐng)注意 有32位系統(tǒng)包,有64位系統(tǒng)包,根據(jù)情況選擇。這里是centos 64位的)
1、先查看所需的包是否安裝
rpm -q libjpeg libjpeg-devel libpng libpng-devel freetype freetype- ? devel libtiff
先把一些圖片補(bǔ)丁包安裝。
download地址:http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.3.18/GraphicsMagick-1.3.18.tar.gz/download
解壓tar zvxf GraphicsMagick-1.3.18.tar.gz
cd GraphicsMagick-1.3.18
./configure --prefix=/usr/local/GraphicsMagick --with-quantum-depth=8 ? --enable-share
下載 im4java
im4java的思路是通過線程或者進(jìn)程執(zhí)行g(shù)raphicsmagick的命令,它的api只是為了能生成命令,而不是調(diào)用graphicsmagick的庫(kù)。
我使用的最新的jar :im4java-1.4.0-1.5.jar
測(cè)試代碼如下:
IM4JAVA是同時(shí)支持ImageMagick和GraphicsMagick的,這里是bool值,如果為true則使用GM,如果為false支持IM。
/**
*
* @param picPath 圖片路徑
* @param drawPicPath draw后的路徑
* @param width draw后的寬度
* @param height draw后的高度
* @throws IOException
* @throws InterruptedException
* @throws IM4JavaException
*/
public static void drawImg(String picPath,String drawPicPath,int width, int height) throws IOException, InterruptedException, IM4JavaException{
IMOperation op = new IMOperation();
op.addImage();
op.resize(width, height);
op.font("Arial").fill("red").draw("text 100,100 www.taobao.com");
op.quality(85d);
op.addImage();
//IM4JAVA是同時(shí)支持ImageMagick和GraphicsMagick的,如果為true則使用GM,如果為false支持IM。
ConvertCmd cmd = new ConvertCmd(true);
String osName = System.getProperty("os.name").toLowerCase();
if(osName.indexOf("win")>=0) { //linux下不要設(shè)置此值,不然會(huì)報(bào)錯(cuò)
cmd.setSearchPath("E://Program Files//GraphicsMagick-1.3.18-Q8");
}
cmd.setErrorConsumer(StandardStream.STDERR);
cmd.run(op, picPath , drawPicPath);
}
/**
*
* @param args
*/
public static void main(String args[]){
try {
drawImg("D://tester.jpg", "D://testerTwo.jpg", 300,400);
} catch (Exception e) {
e.printStackTrace();
}
}
作者:tangpengtao 發(fā)表于2013-6-30 20:24:41 原文鏈接
閱讀:57 評(píng)論:0 查看評(píng)論
總結(jié)
以上是生活随笔為你收集整理的graphicsmagick im4java,GraphicsMagick+im4java 图片处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java安装cab破损,WCELOAD无
- 下一篇: storm java开发环境搭建,看这里