JSP高清缩略图JMagick使用
来源:互联网 发布:网络推广管理制度 编辑:程序博客网 时间:2024/04/28 15:25
JSP高清缩略图JMagick使用,实现了对图片的多种操作,合成图片,缩略图、复制数据等等...。
首先下载:
http://downloads.jmagick.org/6.3.9/ImageMagick-6.3.9-0-Q16-windows-dll.exe
http://downloads.jmagick.org/6.3.9/jmagick-win-6.3.9-Q16.zip
安装ImageMagick-6.3.9-0-Q16-windows-dll.exe程序在F盘如:F:/ImageMagick可以自由选择。然后配置环境Path加入ImageMagick的安装目录;F:/ImageMagick。
解压jmagick-win-6.3.9-Q16.zip,将jmagick-win-6.3.9-Q16.zip里的jmagick.jar。放到TOMCAT安装目录/lib/里和Java安装目录/jdk/jre/lib/ext/里。再把jmagick.dll 放到TOMCAT安装目录/bin/目录下就ok了。以下是封装BEAN对图片缩放剪切代码:
Jmagick.java
package Image;import magick.*;import java.awt.*; public class Jmagick {//图片缩放public void Jwh(String URLPath ,String srcImage, String DestImage, int WLen, int HLen){ MagickImage scaled = null; Rectangle rect = null; int x=0; int y=0; int lw=0; int lh=0; try{ ImageInfo info = new ImageInfo(URLPath+srcImage); MagickImage image = new MagickImage(info); //取长宽 Dimension dim = image.getDimension(); double wImage = dim.getWidth(); double hImage = dim.getHeight(); if (HLen==0) { //正常缩小 Boolean bWBig = wImage > hImage? true:false ; if (bWBig) {//长大过高 hImage = WLen * ( hImage / wImage); wImage = WLen; } else {//反之 wImage = WLen * ( wImage / hImage); hImage = WLen; } } else {//剪切缩小 Boolean bWBig = wImage-WLen < hImage-HLen? true:false ; if (bWBig) {//长大过高 hImage = WLen * ( hImage / wImage); wImage = WLen; } else {//反之 wImage = HLen * ( wImage / hImage); hImage = HLen; }}lw=(int)wImage;lh=(int)hImage;//输出scaled = image.scaleImage(lw, lh);if (HLen>0) {//剪切缩小必须是JPG格式 x=(lw-WLen)/2; y=(lh-HLen)/2; lw=lw-(lw-WLen); lh=lh-(lh-HLen); rect = new Rectangle(x, y, lw, lh); scaled = scaled.cropImage(rect); } scaled.setFileName(URLPath+DestImage); scaled.writeImage(info); scaled.destroyImages(); }catch(MagickApiException ex){ }catch(MagickException ex){ } finally { scaled.destroyImages(); } }}
编译后Jmagick.class放在/WEB-INF/classes/Image/文件夹下
使用方式:
String Path="/1.gif";String PathS="/12.gif";int Ww=100;int Hh=0;//设置Hh高度为0的时候是按图片的宽度比例缩放图片,设置图片Hh大于0以上就按指定大小图片比例剪切为不变形的缩放图片。Image.Jmagick Jmagick=new Image.Jmagick();Jmagick.Jwh(getServletContext().getRealPath("/"),Path,PathS,Ww,Hh);
- JSP高清缩略图JMagick使用
- java使用JMagick生成高质量缩略图
- JSP使用上传文件,并生产高清缩略图示例
- java高品质缩略图生成方法----Jmagick使用
- java高品质缩略图生成方法,Jmagick使用1
- java高品质缩略图生成方法,Jmagick使用2
- 电子商务文件存储及读取服务的设计和开发思路(JMagick用于生成高清的缩略图)
- C#获取高清缩略图
- C#获取高清缩略图
- C#生成高清缩略图
- C#生成高清缩略图
- C#生成高清缩略图
- 使用Jmagick压缩高质量图片
- 使用Jmagick压缩高质量图片
- asp.net显示高清缩略图
- Asp.net 生成高清缩略图
- Asp.Net 高清图片缩略图生成
- asp.net显示高清缩略图
- struts2的校验,检验email
- pbrt编译通过
- i386 页式内存管理机制
- struts2的OGNL表达式
- 逻辑地址 物理地址 线性地址
- JSP高清缩略图JMagick使用
- 转化问题
- spring中scope作用域
- Spring Autowire自动装配
- PowerPC-MPC603e内核学习笔记之mpc8245中断控制器
- PowerPC-MPC603e内核学习笔记之mpc8245配置寄存器
- 多线程服务器的常用编程模型
- C语言中不支持重载,而C++支持
- poj 1088 滑雪