`
jakty
  • 浏览: 4744 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

图片处理

    博客分类:
  • java
阅读更多
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;

public class ImageHandle {
	/**
	 * 等比压缩图片的方法
	 * 
	 * @param srcURL
	 *            原图片路径
	 * @param deskURL
	 *            目标图片路径
	 * @param width
	 *            生成图片的宽度
	 * @throws Exception
	 */
	public void getCompressJPG(String srcURL, String outputPicName, int width,
			int height) {
		double ratio = 1.0;
		double widthRatio = 1;
		double heightRatio = 1;
		File inputFile = new File(srcURL);
		try {
			BufferedImage Bi = ImageIO.read(inputFile);
			int imageWidth = Bi.getWidth();
			int imageHeight = Bi.getHeight();
			widthRatio = imageWidth / (width * 1.0);
			heightRatio = imageHeight / (height * 1.0);
			if (widthRatio < heightRatio) {
				ratio = heightRatio;
			} else {
				ratio = widthRatio;
			}
			int widthdist = (int) Math.floor(Bi.getWidth() / ratio);
			int heightdist = (int) Math.floor(Bi.getHeight() / ratio);
			BufferedImage tag = new BufferedImage(widthdist, heightdist,
					BufferedImage.TYPE_INT_RGB);
			tag.getGraphics().drawImage(
					Bi.getScaledInstance(widthdist, heightdist,
							BufferedImage.SCALE_SMOOTH), 0, 0, null);
			File littleFile = new File(outputPicName);
			ImageIO.write(tag, "JPEG", littleFile);
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}

	public static void main(String[] args) {
		ImageHandle imggeHandle = new ImageHandle();
		String srcURL = "D:/aa.jpg";
		String outPutPicName = "D:/cc.jpg";
		int width = 400;
		int height = 500;
		imggeHandle.getCompressJPG(srcURL, outPutPicName, width, height);
	}
}

 

分享到:
评论

相关推荐

    VC图片处理 VC图片处理

    在VC++(Visual C++)开发环境中,图片处理是一项常见的任务,它涉及到图像的加载、显示、编辑和保存等操作。VC++提供了多种方法来处理图片,这些方法主要基于Windows API函数、MFC(Microsoft Foundation Classes)...

    《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf

    《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片处理.pdf《网店商品图片与视频拍摄及处理》—08商品图片...

    Java图片处理类库SimpleImage.zip

    SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。 SimpleImage中的ImageRender是图片处理的基类,它是一个抽象类,我们看到,该类中定义了一个抽象方法render(),同时持有一个对...

    安卓手绘图片处理画板相关-Gallery图片叠层处理和图片轮训模糊处理.rar

    在安卓平台上,手绘图片处理和画板应用的开发是一个有趣且富有挑战性的领域。"安卓手绘图片处理画板相关-Gallery图片叠层处理和图片轮训模糊处理.rar"这个压缩包文件显然包含了与这一主题相关的源代码和资源,旨在...

    android图片处理集合demo

    在Android开发中,图片处理是一项常见的任务,涉及到用户体验和应用性能。"android图片处理集合demo"是一个示例项目,集中展示了多种图片处理技术。虽然代码可能没有经过精心整理,但仍然能为开发者提供宝贵的参考。...

    图片处理小工具

    在IT领域,图片处理是一项常见的任务,而"图片处理小工具"正是一款专注于解决这些问题的软件。这款工具专为用户提供了便捷的批量处理功能,能够有效地优化和调整大量的图像文件,提升工作效率。以下是对该软件及其...

    淘宝图片处理软件

    为淘客专门做的,为你带来皇冠、、、美图淘淘是一款专为网店卖家设计的批量图片处理软件,包括图片处理、添加装饰素材、边框、文字等图片处理的常用功能。美图淘淘可同时对多张图片进行处理,将原先需要重复劳动的...

    一个PHP多功能图片处理类库

    1. **图片缩放**:缩放是图片处理中最基础的功能,允许开发者调整图片的大小以适应不同的显示环境。21PHP图片处理类可能包含了自定义比例或固定尺寸的缩放方法,同时考虑到保持图片的原始宽高比,避免拉伸变形。 2....

    asp.net图片处理.rar

    ASP.NET 图片处理技术是Web开发中的一个重要环节,它涵盖了从上传、裁剪、缩放、旋转到水印添加等一系列图像操作。在ASP.NET框架下,开发者可以利用各种工具和库来实现这些功能,为网站提供丰富的图像服务。本文将...

    图片处理程序(Qt)

    【图片处理程序(Qt)】是一个基于Qt框架开发的简易应用程序,主要功能是实现对图像进行翻转、调整大小和改变像素的操作。Qt是一个跨平台的C++图形用户界面库,广泛应用于桌面应用、移动应用以及嵌入式系统中。在这...

    批量图片处理工具-批量裁剪,批量色彩处理,滤镜.7z

    在IT领域,图片处理是一项常见的任务,特别是在设计、摄影或网站开发中。为了提高效率,批量处理工具应运而生,比如"批量图片处理工具-批量裁剪,批量色彩处理,滤镜.7z"这款软件。这款工具专门针对图片进行自动化...

    一个PHP多功能图片处理类库.zip

    在PHP开发中,图片处理是一项常见的任务,包括但不限于图片缩放、添加水印、裁剪、旋转等。这里我们讨论的是一款名为“21PHP...在实际项目中,根据需求选择合适的功能,结合这个类库,可以轻松实现高效的图片处理流程。

    daycaca一款基于canvas图片处理类库它可以帮助你处理图片的压缩裁剪等

    《基于Canvas的图片处理类库Daycaca:深入解析与应用》 Daycaca是一款强大的JavaScript图片处理类库,它充分利用HTML5中的Canvas元素,为开发者提供了便捷的图片压缩和裁剪功能。在Web开发中,尤其是在用户上传图片...

    pb图片处理

    在IT行业中,图片处理是一项常见的任务,特别是在软件开发和网页设计中。PowerBuilder(简称pb)是一款强大的可视化编程工具,尤其适用于开发数据库应用系统。在这个“pb图片处理”的主题中,我们将探讨如何利用...

    PHP图片处理(上传、加水印、缩略图)

    PHP图片处理(上传、加水印、缩略图),对图片的处理

    word插件,图片处理专用

    然而,Word的内置功能可能无法满足所有高级需求,这时,"word插件,图片处理专用"就显得尤为重要。 Word插件是一种能够扩展Word功能的小型软件应用,它们通常由第三方开发者创建,旨在解决特定问题或提供额外的工具...

    Android图片处理源码

    在Android开发中,图片处理是一项常见的任务,涉及到用户界面的美观、用户体验的优化以及资源的高效利用。这个压缩包文件“Android图片处理源码”很可能包含了一些用于Android平台的图片处理库或者示例代码,帮助...

    华为云对象存储服务-图片处理特性指南.pdf

    本指南主要聚焦于华为云OBS的图片处理特性,帮助用户理解和利用这些特性优化图片管理和应用。 1.1 什么是图片处理? 图片处理是指在华为云OBS上对存储的图片进行一系列操作,如缩放、裁剪、旋转、水印添加、格式...

    图片处理(图片放大缩小翻转水印镜像等更能)

    在IT行业中,图片处理是一项常见的任务,特别是在网页设计、图形设计、数据分析以及各种应用程序的开发中。本主题主要关注如何实现图片的放大、缩小、翻转、添加水印以及镜像效果。以下是对这些功能的详细说明: 1....

    php 图片处理类

    php 图片处理类 图片上传 缩略图 实用的 直接可用

Global site tag (gtag.js) - Google Analytics