日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

graphicsmagick im4java,GraphicsMagick+im4java 图片处理

發(fā)布時間:2023/12/20 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 graphicsmagick im4java,GraphicsMagick+im4java 图片处理 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

最近團隊內(nèi)部分享GraphicsMagick+im4java 圖片處理 就把如何安裝,運行都統(tǒng)一整理一下。

詳細如下:

在windows上安裝ImageMagick:

關于Q8,Q16,Q32的說明:(建議使用8,現(xiàn)在數(shù)碼相機照的相片,每一種顏色就是8位深,3種顏色就是24位,所以選8)

支持的參數(shù)有3種,分別是 8, 16, or 32。默認值是16。

Q8表示: 8-bits per pixel quantum

Q16表示:16-bits per pixel quantum

Q32表示:32-bits per pixel quantum

使用16-bit per pixel quantums在處理圖片時比8-bit慢15%至50%,并須要更多的內(nèi)存。

處理一張1024x768像素的圖片8-bit要使用3.6M內(nèi)存,16-bit要使用7.2M內(nèi)存。計算方法是: (5 * Quantum Depth * Rows * Columns) / 8

配置 環(huán)境變量加入PATH:E:\Program Files\GraphicsMagick-1.3.18-Q8(個人習慣放在E盤)

二. Linux下的安裝與配置(下載時請注意 有32位系統(tǒng)包,有64位系統(tǒng)包,根據(jù)情況選擇。這里是centos 64位的)

1、先查看所需的包是否安裝

rpm -q libjpeg libjpeg-devel libpng libpng-devel freetype freetype- ? devel libtiff

先把一些圖片補丁包安裝。

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的思路是通過線程或者進程執(zhí)行graphicsmagick的命令,它的api只是為了能生成命令,而不是調(diào)用graphicsmagick的庫。

我使用的最新的jar :im4java-1.4.0-1.5.jar

測試代碼如下:

IM4JAVA是同時支持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是同時支持ImageMagick和GraphicsMagick的,如果為true則使用GM,如果為false支持IM。

ConvertCmd cmd = new ConvertCmd(true);

String osName = System.getProperty("os.name").toLowerCase();

if(osName.indexOf("win")>=0) { //linux下不要設置此值,不然會報錯

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 評論:0 查看評論

總結

以上是生活随笔為你收集整理的graphicsmagick im4java,GraphicsMagick+im4java 图片处理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。