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`库等,来生成缩略图。这些库提供了...
综上所述,要在`QListWidget`中显示图片缩略图,你需要加载图片,创建缩略图,然后将缩略图设置为列表项的图标。同时,根据需求,可以进行性能优化和事件处理,使得交互更加友好。通过这种方式,`QListWidget`不仅...
本文将详细讲解如何使用Delphi来创建图片缩略图,并以提供的源代码为例进行解析。 首先,我们需要了解Delphi中的关键组件和API。在Delphi中,可以使用`TImage`组件来显示图像,但生成缩略图则需要更底层的图像处理...
7. **图片轮播**:使用jQuery UI的Slider或Slick等轮播插件,创建具有导航箭头、分页器和动画效果的图片缩略图轮播。 8. **拖放排序**:通过Sortable插件,用户可以拖放图片缩略图进行排序,增强交互性。 9. **...
本文介绍了使用Java实现上传图片并生成缩略图的方法,包括获取文件路径、读取图像、创建缩略图及保存缩略图等步骤。通过这种方式,可以在不损失原图质量的前提下,有效地减少加载时间,提升用户体验。此外,本文还...
总结来说,使用CSS创建图片缩略图涉及对HTML元素的样式控制,包括设置尺寸、布局、边框、过渡效果等。通过巧妙地组合这些样式规则,我们可以创建出美观且功能齐全的图片缩略图展示,提升网页的整体视觉效果和用户...
为了处理多个图片,你可以将以上步骤放在一个循环中,遍历所有图片文件,这样就可以生成一个包含所有图片缩略图的列表。例如,如果有一个名为"fileOpen"的文件列表,你可以这样做: ```cpp QStringList files = ...
总的来说,实现“D7浏览图片缩略图”的过程包括上传图片、创建缩略图、使用CSS美化缩略图展示,以及用JavaScript处理用户交互。这个源码可以作为学习Drupal 7图片处理和前端交互的实例,帮助开发者了解如何在实际...
在.NET框架中,生成图片缩略图是一项常见的任务,尤其在网页开发或者图像处理应用中。这个场景描述了如何利用.NET技术将原始图片按照宽度或高度的比例进行压缩,生成一个符合特定尺寸要求的小尺寸图片,即所谓的...
在.NET框架下,创建图片缩略图是一项常见的任务,尤其在网页开发、图像处理或文件管理应用中。本文将详细讲解如何使用C#语言在.NET环境下实现图片的压缩和缩略图的生成。 首先,我们需要引入必要的命名空间,如`...
总的来说,HTML5的File API、Canvas和Data URL提供了强大的本地文件处理能力,使得在浏览器端生成图片缩略图预览成为可能,大大提升了图片上传功能的用户体验。在实际开发中,我们还需要考虑性能优化、兼容性处理...
在本文中,我们将深入探讨如何基于Springmvc实现图片上传及生成缩略图的功能。Springmvc是Spring框架的一个重要模块,用于构建MVC模式的Web应用,它提供了强大的数据绑定、模型映射、视图渲染等功能,是Java开发中的...
- 需要注意的是,在创建缩略图时,要保持原始图片的比例,避免图片变形。 5. **处理图片比例:** - 计算原图的宽高比,根据目标缩略图的尺寸计算出合适的缩略图尺寸。 - 通过条件判断决定是基于宽度还是高度来...
在这个特定的场景中,"mfct图片缩略图"涉及到如何在MFC应用程序中实现图片的缩略图展示,同时支持用户交互,如点击放大和删除。 1. **缩略图创建**: - 在MFC中,你可以使用`CImage`类来加载和处理图像。`CImage`...
在IT领域,图片缩略图展开是一个常见的操作,特别是在网页设计、图像处理和多媒体应用中。这个过程涉及到从一个小尺寸的预览图像(缩略图)恢复到原始的大尺寸图片,以便用户可以查看细节或者进行编辑。下面我们将...
在C#编程中,查看图片缩略图是一项常见的任务,特别是在开发图形用户界面(GUI)应用或者处理大量图像文件时。这个源码可能是提供了一种方法来生成和显示图片的预览,即缩略图。下面我们将深入探讨如何在C#中实现这...
本教程将详细讲解如何使用CSS属性来创建HTML中的图片缩略图,不涉及图片内容本身。 首先,我们需要在HTML文件中插入图片元素。以`<img>`标签为例,我们通常会设置`src`属性指向图片的URL,`alt`属性提供替代文本,...
通过研究和理解这个代码,开发者可以更好地掌握如何在Android应用中正确处理图片缩略图的获取和展示,同时解决可能出现的问题。 总之,获取Android设备上的最近相片缩略图需要正确查询MediaStore,按时间排序,并...
预览图片后,我们可能还需要生成缩略图,以减小数据传输量或适应不同的展示尺寸。这里我们可以利用HTML5的Canvas元素。 1. 创建一个canvas元素,并获取其2D渲染上下文。 ```javascript var canvas = document....
综上所述,"缩略图生成sample代码"提供了一种自定义文件类型缩略图的方法,通过实现`IThumbnailProvider`接口并在注册表中设置,开发者可以为自己的应用程序或文件类型创建独特的预览体验。理解并运用这些知识点,有...