`
忧里修斯
  • 浏览: 432238 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

创建图片缩略图

    博客分类:
  • J2SE
阅读更多
import java.io.*;
import java.awt.*;
import java.awt.image.*;
import com.sun.image.codec.jpeg.*;

public class ImageUtil {
	private String srcFile;
	private String destFile;
	private int width;
	private int height;
	private Image img;

	public ImageUtil(String srcFile) throws IOException {
		File _file = new File(srcFile); 
		this.srcFile = srcFile;
		this.destFile = srcFile;
		img = javax.imageio.ImageIO.read(_file);
		width = img.getWidth(null);
		height = img.getHeight(null);
	}

	public void resize(int w, int h) throws IOException {
		BufferedImage _image = new BufferedImage(w, h,BufferedImage.TYPE_INT_RGB);
		_image.getGraphics().drawImage(img, 0, 0, w, h, null);
		FileOutputStream out = new FileOutputStream(destFile);
		JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
		encoder.encode(_image);
		out.close();
	}

	public void resize(double t) throws IOException {
		int w = (int) (width * t);
		int h = (int) (height * t);
		resize(w, h);
	}

	public void resizeByWidth(int w) throws IOException {
		int h = (int) (height * w / width);
		resize(w, h);
	}

	public void resizeByHeight(int h) throws IOException {
		int w = (int) (width * h / height);
		resize(w, h);
	}

	public void resizeFix(int w, int h) throws IOException {
		if (width / height > w / h) {
			resizeByWidth(w);
		} else {
			resizeByHeight(h);
		}
	}

	public int getSrcWidth() {
		return width;
	}

	public int getSrcHeight() {
		return height;
	}
}
分享到:
评论

相关推荐

    图片缩略图展示图片缩略图展示图片缩略图展示

    在网页开发中,创建图片缩略图通常涉及到以下几个技术点: 1. 图像处理库:开发者可以使用各种图像处理库,如JavaScript的`sharp`或`canvas` API,Python的`Pillow`,PHP的`GD`库等,来生成缩略图。这些库提供了...

    17种基于jquery的图片缩略图列表

    7. **图片轮播**:使用jQuery UI的Slider或Slick等轮播插件,创建具有导航箭头、分页器和动画效果的图片缩略图轮播。 8. **拖放排序**:通过Sortable插件,用户可以拖放图片缩略图进行排序,增强交互性。 9. **...

    java 上传图片生成缩略图

    本文介绍了使用Java实现上传图片并生成缩略图的方法,包括获取文件路径、读取图像、创建缩略图及保存缩略图等步骤。通过这种方式,可以在不损失原图质量的前提下,有效地减少加载时间,提升用户体验。此外,本文还...

    QListWidget显示图片缩略图

    综上所述,要在`QListWidget`中显示图片缩略图,你需要加载图片,创建缩略图,然后将缩略图设置为列表项的图标。同时,根据需求,可以进行性能优化和事件处理,使得交互更加友好。通过这种方式,`QListWidget`不仅...

    使用CSS制作图片缩略图

    总结来说,使用CSS创建图片缩略图涉及对HTML元素的样式控制,包括设置尺寸、布局、边框、过渡效果等。通过巧妙地组合这些样式规则,我们可以创建出美观且功能齐全的图片缩略图展示,提升网页的整体视觉效果和用户...

    D7浏览图片缩略图源码

    总的来说,实现“D7浏览图片缩略图”的过程包括上传图片、创建缩略图、使用CSS美化缩略图展示,以及用JavaScript处理用户交互。这个源码可以作为学习Drupal 7图片处理和前端交互的实例,帮助开发者了解如何在实际...

    .net 上传图片缩略图

    在.NET框架中,生成图片缩略图是一项常见的任务,尤其在网页开发或者图像处理应用中。这个场景描述了如何利用.NET技术将原始图片按照宽度或高度的比例进行压缩,生成一个符合特定尺寸要求的小尺寸图片,即所谓的...

    .net下实现图片缩略图

    在.NET框架下,创建图片缩略图是一项常见的任务,尤其在网页开发、图像处理或文件管理应用中。本文将详细讲解如何使用C#语言在.NET环境下实现图片的压缩和缩略图的生成。 首先,我们需要引入必要的命名空间,如`...

    Qt 缩略图列表显示图片

    为了处理多个图片,你可以将以上步骤放在一个循环中,遍历所有图片文件,这样就可以生成一个包含所有图片缩略图的列表。例如,如果有一个名为"fileOpen"的文件列表,你可以这样做: ```cpp QStringList files = ...

    html5图片上传本地生成缩略图预览

    总的来说,HTML5的File API、Canvas和Data URL提供了强大的本地文件处理能力,使得在浏览器端生成图片缩略图预览成为可能,大大提升了图片上传功能的用户体验。在实际开发中,我们还需要考虑性能优化、兼容性处理...

    基于Springmvc的上传图片并生成缩略图

    在本文中,我们将深入探讨如何基于Springmvc实现图片上传及生成缩略图的功能。Springmvc是Spring框架的一个重要模块,用于构建MVC模式的Web应用,它提供了强大的数据绑定、模型映射、视图渲染等功能,是Java开发中的...

    ANDROID 获取最近的相片的缩略图

    通过研究和理解这个代码,开发者可以更好地掌握如何在Android应用中正确处理图片缩略图的获取和展示,同时解决可能出现的问题。 总之,获取Android设备上的最近相片缩略图需要正确查询MediaStore,按时间排序,并...

    上传图片并生成高清晰缩略图

    - 需要注意的是,在创建缩略图时,要保持原始图片的比例,避免图片变形。 5. **处理图片比例:** - 计算原图的宽高比,根据目标缩略图的尺寸计算出合适的缩略图尺寸。 - 通过条件判断决定是基于宽度还是高度来...

    mfct图片缩略图

    在这个特定的场景中,"mfct图片缩略图"涉及到如何在MFC应用程序中实现图片的缩略图展示,同时支持用户交互,如点击放大和删除。 1. **缩略图创建**: - 在MFC中,你可以使用`CImage`类来加载和处理图像。`CImage`...

    图片缩略图展开

    在IT领域,图片缩略图展开是一个常见的操作,特别是在网页设计、图像处理和多媒体应用中。这个过程涉及到从一个小尺寸的预览图像(缩略图)恢复到原始的大尺寸图片,以便用户可以查看细节或者进行编辑。下面我们将...

    C#查看图片缩略图源码

    在C#编程中,查看图片缩略图是一项常见的任务,特别是在开发图形用户界面(GUI)应用或者处理大量图像文件时。这个源码可能是提供了一种方法来生成和显示图片的预览,即缩略图。下面我们将深入探讨如何在C#中实现这...

    使用CSS属性制作图片HTML缩略图

    本教程将详细讲解如何使用CSS属性来创建HTML中的图片缩略图,不涉及图片内容本身。 首先,我们需要在HTML文件中插入图片元素。以`<img>`标签为例,我们通常会设置`src`属性指向图片的URL,`alt`属性提供替代文本,...

    html5移动端图片上传本地生成缩略图预览(单图上传)

    预览图片后,我们可能还需要生成缩略图,以减小数据传输量或适应不同的展示尺寸。这里我们可以利用HTML5的Canvas元素。 1. 创建一个canvas元素,并获取其2D渲染上下文。 ```javascript var canvas = document....

    缩略图生成sample代码

    综上所述,"缩略图生成sample代码"提供了一种自定义文件类型缩略图的方法,通过实现`IThumbnailProvider`接口并在注册表中设置,开发者可以为自己的应用程序或文件类型创建独特的预览体验。理解并运用这些知识点,有...

    C# 创建缩略图

    缩略图的创建能够帮助我们快速预览大图片,节省存储空间,提高用户体验。以下是一个详细的C#创建缩略图的知识点概述: 1. **System.Drawing命名空间**:在C#中,创建缩略图主要依赖于`System.Drawing`命名空间,它...

Global site tag (gtag.js) - Google Analytics