文档章节

png 图片的缩放

小强斋太
 小强斋太
发布于 2016/11/09 20:08
字数 184
阅读 10
收藏 0

图片缩放的例子

import java.awt.Image;
import java.awt.geom.AffineTransform;
import java.awt.image.AffineTransformOp;
import java.awt.image.BufferedImage;
import java.io.File;

import javax.imageio.ImageIO;

import junit.framework.TestCase;

public class NarrowImg extends TestCase {


/**
 * @param sourceImage 要缩放的源文件路径
 * @param targetImage 缩放后目标文件前缀
 * @param type        缩放后目标文件后缀
 */
	public boolean CreateThumbnail(String sourceImage,String targetImage,String type) throws Exception {
		double Ratio_width = 0.0; // 宽度的缩放比例
		double Ratio_height = 0.0; // 高度的缩放比例
		File F = new File(sourceImage);
		if (!F.isFile())
		throw new Exception(F+ " is not image file error in CreateThumbnail!");
		File targetFile = new File(targetImage+"."+type);

		BufferedImage Bi = ImageIO.read(F);
		
		// 假设图片宽 高 最大为120 120
		Image Itemp = Bi.getScaledInstance(120, 120, BufferedImage.SCALE_SMOOTH);
		Ratio_width = 120.0 / Bi.getHeight();
		Ratio_height = 120.0 / Bi.getWidth();

		AffineTransformOp op = new AffineTransformOp(AffineTransform.getScaleInstance(Ratio_width, Ratio_height), null);
		Itemp = op.filter(Bi, null);

		try {
			ImageIO.write((BufferedImage) Itemp, type, targetFile);
		} catch (Exception ex) {
			throw new Exception(" ImageIo.write error in CreatThum.: "+ ex.getMessage());
		}
		
		return true;
	}
}

原图片

缩放后

 

本文转载自:http://www.cnblogs.com/xqzt/archive/2012/10/17/5637157.html

共有 人打赏支持
小强斋太
粉丝 0
博文 181
码字总数 0
作品 0
广州
私信 提问
PHP图片缩放函数:实现等比例不失真缩放

function resizeImage($im,$maxwidth,$maxheight,$name,$filetype){ } 参数说明: $im 图片对象,应用函数之前,你需要用imagecreatefromjpeg()读取图片对象,如果PHP环境支持PNG,GIF,也可...

微wx笑
2015/01/30
0
0
im4java + imagemagic 搭建一个图片处理服务

imagemagic + im4java 进行图片处理 利用 imagemagic 对图片进行处理,java工程中,使用im4java来操作的api 一、环境 how to install ? 系统,安装之前,需要先安装 包,否则没法处理jpg和p...

小灰灰Blog
2016/10/31
181
0
PNG尺寸缩小实战

为了节省资源,我们希望在不同分辨率的前端上可以获取到不同尺寸的素材资源。由于最近的业务中使用的所有素材都是PNG格式的图片,并且对图片效果要求比较严格,并没有在市面上找到可以直接使...

EchoZhou
2017/11/29
0
0
android图像处理系列之五--给图片添加边框(中)

前面一篇讲到给图片加边框的方式,只能给图片加一些有规则的边框,如果想加一些比较精美的效果,就有点麻烦了。下面就给出解决这个问题的思路。 思路是:一些比较精美的花边图片我们是很难用...

迷途d书童
2012/03/05
1K
0
text-indent和line-height

text-indent 1、一般地,可以为所有块级元素应用text-indent,但不能用到行内元素、图像之类的替换元素 2、如果想把一个行内元素的第一行“缩进”,可以用左内边距或外边距创造这种效果。 3、...

拉普拉斯婷
2016/06/24
22
0

没有更多内容

加载失败,请刷新页面

加载更多

AMD重回服务器:Oracle甲骨文宣布将使用AMD EPYC处理器

导读 AMD的EPYC的推出,让AMD重新有了在服务器级,数据中心级等大型政企领域的竞争机会。如今,很多云服务商开始使用EPYC处理器,Oracle也在近期宣布了将使用EPYC处理器的消息。 甲骨文也公布...

问题终结者
20分钟前
0
0
Maven 依赖范围(Dependency Scope)

Dependency Scope Dependency scope is used to limit the transitivity of a dependency, and also to affect the classpath used for various build tasks. 依赖范围用于限制依赖项的传递性......

晨猫
36分钟前
1
0
细述hbase协处理器

1.起因(Why HBase Coprocessor) HBase作为列族数据库最经常被人诟病的特性包括:无法轻易建立“二级索引”,难以执行求和、计数、排序等操作。比如,在旧版本的(<0.92)Hbase中,统计数据表的...

微笑向暖wx
50分钟前
1
0
【实践】如何获得Rinkeby网络的测试以太币

当把智能合约部署到Rinkeby Test Network时,需要获得测试以太币。其网络获取测试以太币的方法同Ropsten Test Network有些不同,本文详细讲解一下。 1 访问网站 访问rinkeby网络(https://w...

HiBlock
今天
1
0
Logback中如何自定义灵活的日志过滤规则

当我们需要对日志的打印要做一些范围的控制的时候,通常都是通过为各个Appender设置不同的Filter配置来实现。在Logback中自带了两个过滤器实现:ch.qos.logback.classic.filter.LevelFilter...

程序猿DD
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部