- 浏览: 622170 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
xianzi_2008:
xianzi_2008 写道楼主请教下,我缓存了一个List& ...
Ehcache -
xianzi_2008:
楼主请教下,我缓存了一个List<Bean>对象, ...
Ehcache -
jsdsh:
收藏好.五个字
hibernate之one-to-many详细 -
Tlife:
好!!!!
hibernate------HQL总结 -
yanqingluo:
例子很恰当。
观察者模式
根据帖子:http://www.iteye.com/topic/40971 整理
图片缩小处理
第一种方式缩小后质量很差
第二,三种方式缩小后很好
对图片的缩放一定要用 Image下的 getScaledInstance
Graphics下的 还有 AffineTransform下的 缩放都是针对"图形"而不是"图像"的
图形就是用java类画的线条等简单几何图形
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.RenderingHints;
import java.awt.geom.AffineTransform;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class Pic {
public static void reduceImg(String imgsrc, String imgdist, int widthdist,
int heightdist) {
try {
File srcfile = new File(imgsrc);
if (!srcfile.exists()) {
return;
}
Image src = javax.imageio.ImageIO.read(srcfile);
int width = src.getWidth(null);
int height = src.getHeight(null);
if (width == widthdist && height == heightdist) {
FileUtils.copyFile(new File(imgsrc), new File(imgdist));
return;
}
double ws = (double) widthdist / (double) width;
double hs = (double) heightdist / (double) height;
BufferedImage tag=null;
tag = new BufferedImage((int) widthdist, (int) heightdist,
BufferedImage.TYPE_INT_RGB);
Graphics2D g2d=(Graphics2D)tag.getGraphics();
第一种方式
// AffineTransform at=AffineTransform.getScaleInstance(ws,hs);
// RenderingHints qualityHints = new RenderingHints(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// g2d.transform(at);
// qualityHints.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// qualityHints.put(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
//
// qualityHints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
//
// g2d.setRenderingHints(qualityHints);
// g2d.drawImage(src, 0, 0, null);
第2种方式
g2d.drawImage(src.getScaledInstance(widthdist, heightdist, Image.SCALE_SMOOTH), 0, 0, null);
第3种方式
// / tag.getGraphics().drawImage(src.getScaledInstance(widthdist, heightdist, Image.SCALE_AREA_AVERAGING), 0, 0, null);
FileOutputStream out = new FileOutputStream(imgdist);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(tag);
out.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String[] args)
{
Pic.reduceImg("c:/pic/1.gif","c:/pic/11.gif",48,48);
}
}
发表评论
-
常用小代码段和开发经验收集
2011-04-21 14:47 981工作中用到的笔记,方便查找,不断补充。 1,截取过长的文字部分 ... -
java.lang.UnsupportedClassVersionError: Bad version number in .class file
2009-08-26 12:25 3897转载:http://www.blogjava.net/hwpo ... -
java调用dll(Eclipse+CDT+MinGW)
2009-03-06 15:25 6546第一步:配置环境 需要安装CDT和MinGW. CDT:因为 ... -
servlet2.5与el表达式
2008-11-23 15:23 2668Servlet2.4版本默认支持EL,如果在MyEclipse ... -
自定义ClassLoader遇到的问题
2008-09-16 16:47 15151.自定义的类加载器 package classloa ... -
自定义标签调用资源文件
2008-05-12 22:28 1961自定义标签处理类一般都继承TagSupport或BodyTag ... -
Failed to install Tomcat6 service(Tomcat6安装失败解决方法)
2008-05-06 16:24 11709转载 :http://www.handandaily.com/ ... -
tomcat5.5日志配置
2008-05-06 16:13 2523tomcat5.5日志配置: 从Tomcat5.5后,默认设置 ... -
java List<String>集合 传递值给js的数组
2008-04-21 18:12 5328<script> var intIndex= ... -
c3p0 com.mysql.jdbc.CommunicationsException异常
2008-02-18 17:32 6237使用c3p0,偶尔会报异常: 2008-02-18 10:52 ... -
Pattern Matcher
2008-02-18 10:30 1942package test; import java. ... -
FileUpload组件上传文件
2008-01-23 03:05 6703利用FileUpload组件上传文件,需要到apache上下载 ... -
hibernate大字段处理
2008-01-21 16:45 3206hibernate大字段处理:以mysql为例 比如传张图片, ... -
一个页面嵌套一个页面
2008-01-15 10:45 3541一个页面嵌套一个页面,比如a.jsp嵌套b.jsp那么可以用 ... -
java clone
2008-01-13 18:17 59501.java里的clone分为: A:浅复制(浅克隆): 浅复 ... -
修改Eclipse注释里的${Date}变量格式
2008-01-08 15:47 82151.eclipse3.3里${date}日期格 ... -
List移除元素
2008-01-05 16:16 24771. Iterator的remove()是移除从集合里取出来的 ... -
JDom处理xml
2008-01-05 13:51 21081.DOM的缺点主要是由于DOM是一个接口定义语言(IDL), ... -
观察者模式
2008-01-03 00:45 21371观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听 ... -
DelegatingRequestProcessor
2007-12-27 11:30 3690采用DelegatingRequestProcessor将处理 ...
相关推荐
在VC++(Visual C++)开发环境中,图片处理是一项常见的任务,它涉及到图像的加载、显示、编辑和保存等操作。VC++提供了多种方法来处理图片,这些方法主要基于Windows API函数、MFC(Microsoft Foundation Classes)...
《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片...
SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。 SimpleImage中的ImageRender是图片处理的基类,它是一个抽象类,我们看到,该类中定义了一个抽象方法render(),同时持有一个对...
在Android开发中,图片处理是一项常见的任务,涉及到用户体验和应用性能。"android图片处理集合demo"是一个示例项目,集中展示了多种图片处理技术。虽然代码可能没有经过精心整理,但仍然能为开发者提供宝贵的参考。...
在IT领域,图片处理是一项常见的任务,而"图片处理小工具"正是一款专注于解决这些问题的软件。这款工具专为用户提供了便捷的批量处理功能,能够有效地优化和调整大量的图像文件,提升工作效率。以下是对该软件及其...
为淘客专门做的,为你带来皇冠、、、美图淘淘是一款专为网店卖家设计的批量图片处理软件,包括图片处理、添加装饰素材、边框、文字等图片处理的常用功能。美图淘淘可同时对多张图片进行处理,将原先需要重复劳动的...
1. **图片缩放**:缩放是图片处理中最基础的功能,允许开发者调整图片的大小以适应不同的显示环境。21PHP图片处理类可能包含了自定义比例或固定尺寸的缩放方法,同时考虑到保持图片的原始宽高比,避免拉伸变形。 2....
"迷你批量图片处理专家"是一款专门针对图片进行批量处理的工具,主要功能包括转换图片格式、调整图片尺寸、添加水印等。这款软件适合需要处理大量图片的用户,如摄影师、设计师或者个人用户,能够极大地提高工作效率...
在给定的标题“基于JQUERY的图片处理类”和描述中,我们可以推断这是一个利用jQuery进行图片处理的工具或插件,主要功能包括图片上传和裁切。结合标签“php JQUERY 图片处理”,我们可以进一步理解,这个工具可能还...
ASP.NET 图片处理技术是Web开发中的一个重要环节,它涵盖了从上传、裁剪、缩放、旋转到水印添加等一系列图像操作。在ASP.NET框架下,开发者可以利用各种工具和库来实现这些功能,为网站提供丰富的图像服务。本文将...
【图片处理程序(Qt)】是一个基于Qt框架开发的简易应用程序,主要功能是实现对图像进行翻转、调整大小和改变像素的操作。Qt是一个跨平台的C++图形用户界面库,广泛应用于桌面应用、移动应用以及嵌入式系统中。在这...
在IT领域,图片处理是一项常见的任务,特别是在设计、摄影或网站开发中。为了提高效率,批量处理工具应运而生,比如"批量图片处理工具-批量裁剪,批量色彩处理,滤镜.7z"这款软件。这款工具专门针对图片进行自动化...
在PHP开发中,图片处理是一项常见的任务,包括但不限于图片缩放、添加水印、裁剪、旋转等。这里我们讨论的是一款名为“21PHP...在实际项目中,根据需求选择合适的功能,结合这个类库,可以轻松实现高效的图片处理流程。
《基于Canvas的图片处理类库Daycaca:深入解析与应用》 Daycaca是一款强大的JavaScript图片处理类库,它充分利用HTML5中的Canvas元素,为开发者提供了便捷的图片压缩和裁剪功能。在Web开发中,尤其是在用户上传图片...
在IT行业中,图片处理是一项常见的任务,特别是在软件开发和网页设计中。PowerBuilder(简称pb)是一款强大的可视化编程工具,尤其适用于开发数据库应用系统。在这个“pb图片处理”的主题中,我们将探讨如何利用...
PHP图片处理(上传、加水印、缩略图),对图片的处理
然而,Word的内置功能可能无法满足所有高级需求,这时,"word插件,图片处理专用"就显得尤为重要。 Word插件是一种能够扩展Word功能的小型软件应用,它们通常由第三方开发者创建,旨在解决特定问题或提供额外的工具...
在Android开发中,图片处理是一项常见的任务,涉及到用户界面的美观、用户体验的优化以及资源的高效利用。这个压缩包文件“Android图片处理源码”很可能包含了一些用于Android平台的图片处理库或者示例代码,帮助...
本指南主要聚焦于华为云OBS的图片处理特性,帮助用户理解和利用这些特性优化图片管理和应用。 1.1 什么是图片处理? 图片处理是指在华为云OBS上对存储的图片进行一系列操作,如缩放、裁剪、旋转、水印添加、格式...
在IT行业中,图片处理是一项常见的任务,特别是在网页设计、图形设计、数据分析以及各种应用程序的开发中。本主题主要关注如何实现图片的放大、缩小、翻转、添加水印以及镜像效果。以下是对这些功能的详细说明: 1....