- 浏览: 3119790 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (372)
- diy (4)
- linux (19)
- 杂项 (30)
- Swing (21)
- Java2D (21)
- Java3D (5)
- JavaIO (9)
- Java通讯 (5)
- Java设计模式 (3)
- Java多媒体 (0)
- Java算法 (7)
- Spring&EJB (29)
- Javaoffice (4)
- web前端 (23)
- javascript (1)
- php基础 (1)
- eclipse (3)
- 网站相关 (3)
- Apache (4)
- seo (12)
- db (28)
- server (3)
- api (4)
- 异常 (12)
- 计算机网络词汇表 (3)
- 随想录 (52)
- 收藏 (17)
- 犹太人的智慧 (3)
- 多线程 (1)
- jfreechart (7)
- Test (1)
- SorLib (30)
- ruby on rails (1)
最新评论
-
houyutao:
二三四都是错的空字符串也被匹配,*应该改成+
Java中判断字符串是否为数字的五种方法 -
mingyun:
但是 java.util.ArrayList 实现了 remo ...
java.lang.UnsupportedOperationException 解决方案 -
mingyun:
1.因为 Arrays.asList 返回的是 Arrays内 ...
java.lang.UnsupportedOperationException 解决方案 -
leolu007:
用java8新特性String testStr = " ...
java.lang.UnsupportedOperationException 解决方案 -
zhaohuaxishiwzw:
我之前所在的项目就是日本一家证券公司的项目。完全使用的是j2e ...
抛弃EJB(EJB2.0,EJB3.0,EJB4.0)
我们经常会将一个小的图片变成小一些的图片,利用java可以方便的实现,而且实现了这个功能后就可以实现更强大的功能,将一个文件夹中的所有图片都变成一个尺寸。这里提供一个将大图变成小图的方法。
并且提供一个根据这个方法的写好的一个:图片批量尺寸处理器。可以将一个文件夹下的所有图片,批量的按照一定尺寸都保存到另一个文件夹中。该工具在操作超大图片的时候会出现内存溢出的错误。功能简单也没有做太多出错处理,一般情况下挺好用的,大家将就着用吧。
文章地址:http://javapub.iteye.com/blog/666607
相关文章
Java图像图片 边缘检测 http://javapub.iteye.com/blog/685468
Java图像变灰 http://javapub.iteye.com/blog/687082
Java 给图片增加 水印图片 水印文字 [url]Java 给图片增加 水印图片 水印文字[/url]
Java图像渐变 http://javapub.iteye.com/blog/736799
Java将大图片转成小图片 http://javapub.iteye.com/blog/666607
并且提供一个根据这个方法的写好的一个:图片批量尺寸处理器。可以将一个文件夹下的所有图片,批量的按照一定尺寸都保存到另一个文件夹中。该工具在操作超大图片的时候会出现内存溢出的错误。功能简单也没有做太多出错处理,一般情况下挺好用的,大家将就着用吧。
import java.awt.Graphics2D; import java.awt.Image; import java.awt.geom.AffineTransform; import java.awt.image.AffineTransformOp; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import javax.imageio.ImageIO; public class Temp01{ private Temp01(){ } private void imageOp(InputStream inFile, String outFilePath, int width, int height){ Image image = null; try { image = ImageIO.read(inFile); } catch (IOException e) { System.out.println("file path error..."); } int originalImageWidth = image.getWidth(null); int originalImageHeight = image.getHeight(null); BufferedImage originalImage = new BufferedImage( originalImageWidth, originalImageHeight, BufferedImage.TYPE_3BYTE_BGR); Graphics2D g2d = originalImage.createGraphics(); g2d.drawImage(image, 0, 0, null); BufferedImage changedImage = new BufferedImage( width, height, BufferedImage.TYPE_3BYTE_BGR); double widthBo = (double)width/originalImageWidth; double heightBo = (double)width/originalImageHeight; AffineTransform transform = new AffineTransform(); transform.setToScale(widthBo, heightBo); AffineTransformOp ato = new AffineTransformOp(transform, null); ato.filter(originalImage, changedImage); File fo = new File(outFilePath); //将要转换出的小图文件 try { ImageIO.write(changedImage, "jpeg", fo); } catch (Exception e) { e.printStackTrace(); } } private void imageOp(String inFilePath, String outFilePath, int width, int height){ File tempFile = new File(inFilePath); Image image = null; try { image = ImageIO.read(tempFile); } catch (IOException e) { System.out.println("file path error..."); } int originalImageWidth = image.getWidth(null); int originalImageHeight = image.getHeight(null); BufferedImage originalImage = new BufferedImage( originalImageWidth, originalImageHeight, BufferedImage.TYPE_3BYTE_BGR); Graphics2D g2d = originalImage.createGraphics(); g2d.drawImage(image, 0, 0, null); BufferedImage changedImage = new BufferedImage( width, height, BufferedImage.TYPE_3BYTE_BGR); double widthBo = (double)width/originalImageWidth; double heightBo = (double)width/originalImageHeight; AffineTransform transform = new AffineTransform(); transform.setToScale(widthBo, heightBo); AffineTransformOp ato = new AffineTransformOp(transform, null); ato.filter(originalImage, changedImage); File fo = new File(outFilePath); //将要转换出的小图文件 try { ImageIO.write(changedImage, "jpeg", fo); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) throws FileNotFoundException { Temp01 t1 = new Temp01(); t1.imageOp("C:/p02.jpg", "C:/p03.jpg", 400, 300); InputStream in = new FileInputStream(new File("C:/p02.jpg")); t1.imageOp(in, "C:/p04.jpg", 400, 300); } }
文章地址:http://javapub.iteye.com/blog/666607
相关文章
Java图像图片 边缘检测 http://javapub.iteye.com/blog/685468
Java图像变灰 http://javapub.iteye.com/blog/687082
Java 给图片增加 水印图片 水印文字 [url]Java 给图片增加 水印图片 水印文字[/url]
Java图像渐变 http://javapub.iteye.com/blog/736799
Java将大图片转成小图片 http://javapub.iteye.com/blog/666607
- ZImgResizer.zip (104.3 KB)
- 下载次数: 95
发表评论
-
利用JFrame直接显示JFreeChart的图片
2012-06-12 16:38 5289核心代码就是要将一个JFreeChart 对象,写到Buffe ... -
控件位置可以配置的Swing桌面
2011-01-07 17:48 3039用过Wordpress或者Joomla的朋友一定对他们的灵活的 ... -
jfreechart jar包下载
2010-10-15 10:07 6912jfreechart 是java用于生成图表的开源工具包,网上 ... -
GradientPaint类的作用
2010-10-11 15:35 9849GradientPaint是Java2D中专门用来控制渐变的类 ... -
Swing控件(JPanel,Container等)设置背景图片
2010-09-16 11:07 11870Swing控件有直接设置背景颜色的方法,但没有直接设置背景图片 ... -
Java关于JIT的原理和相关知识
2010-09-13 16:31 7187今天在读java.awt.Toolkit类时,遇到了JIT,代 ... -
Java 2D 学习资料和API
2010-09-13 15:56 6677关键词:Java2D,坐标转换,渲染,坐标系,字体 ... -
Swing特效-渐显效果
2010-09-09 16:04 6260能不能让Swing控件也有渐隐和渐显的效果呢,答案当然是肯定的 ... -
利用JFreeChart画坐标及曲线图
2010-09-07 16:54 9570关键词:Swing,JFreeChart,坐标,曲线图 运行以 ... -
Java2D特效 文字旋转
2010-09-03 17:12 2347将图形围绕某点按照给定的角度进行旋转 效果图: 源代码: ... -
Java图像缩放 图片缩放
2010-08-15 12:31 9042图像缩放是我们常常用到的一个操作,原理是数字图像处理的事,这里 ... -
类DirectColorModel的作用
2010-08-13 16:11 2943DirectColorModel 类别是使用像素值的 Colo ... -
Java图像渐变
2010-08-13 16:05 7430图像渐变我们大体想一下思路无非是这样:将图像所有的像素点的RB ... -
Java 给图片增加 水印图片 水印文字
2010-07-12 20:49 4312很多时候会用到给图片增加水印,这个时候我推荐利用“光影魔术手” ... -
Java图像变灰 及相关类ColorSpace,ColorConvertOp
2010-06-08 15:49 12664用Java进行图像处理,会遇到ColorSpace这个类:Co ... -
Java图像图片 边缘检测
2010-06-06 20:54 19800对图片进行边缘检测在很多领域是非常重要的,例如:车牌号码的识别 ... -
Java 图像钝化与锐化
2010-06-05 02:08 10326Java图像的钝化和锐化就是一个算法的问题,说白了就是两个方法 ... -
Java图片变亮 变暗
2010-06-05 01:42 4650Java在图片处理领域的功 ... -
Java加载图片 利用Image与BufferedImage
2010-06-04 13:14 50416Image是一个抽象列,BufferedImage是Image ... -
Swing显示图片
2010-06-02 17:48 32505Swing显示图片可以有很多的种选择,例如:可以用JLabel ...
相关推荐
本知识点主要探讨如何在Java中实现自适应图片大小的水印功能,以及遇到图片过小时的处理策略。 首先,我们需要理解水印的基本概念。水印是在图像或文档上添加的一种视觉标记,它可以是文字、图像或者图形,用于表明...
综上所述,将小图片打包成atlas大图片是优化游戏性能的关键步骤,LibGDX为此提供了强大的支持。通过使用atlas-packer这样的工具,结合LibGDX的TextureAtlas类,开发者可以高效地管理游戏中的图形资源,从而提升游戏...
本篇文章将详细探讨如何利用Java实现这一功能,以及相关的核心概念和技术。 首先,我们需要理解基本的图像处理概念。图像可以被视为二维数组,其中每个元素代表一个像素,包含颜色信息(RGB值)。在Java中,我们...
本压缩包提供的是一款命令行工具,名为"imageSplit.jar",用于切割图集,将单张大图片自动识别并分割成许多小图片。这样的设计使得开发者可以在没有图形用户界面的情况下,通过命令行操作完成任务,这对于自动化工作...
### Java生成缩略小图片类知识点解析 #### 一、概览 本文档介绍了一个用于Java项目的类——`Small_pic`,它能够帮助开发者轻松地处理图像,特别是生成缩略图的功能。该类包含了丰富的注释,使得即使是初学者也能...
1. 图片合并与雪碧图(Sprite Sheets):为了减少HTTP请求次数,提高页面加载速度,可以将多个小图片合并成一张大图,然后通过CSS定位显示需要的部分,这种方法称为雪碧图技术。 2. CSS背景精灵:与雪碧图类似,...
通过它,你可以迅速地将大图片转换成小图片,避免了在Photoshop等专业软件中进行繁琐的裁剪和保存步骤。这对于那些需要频繁处理图片,但又不具备专业图像编辑技能的用户来说,无疑是一个极大的便利。 【标签】...
生成小图片可能是通过调整原图的尺寸,或者直接裁剪大图的一部分。这里也可以用到`Scalr`库,或者使用`AffineTransformOp`来实现。小图片的目的是在网页上快速加载和显示,所以通常尺寸较小且质量适中。 6. **...
本教程主要探讨如何在AndEngine中直接加载多张小图片,并将它们合成一张大图片,生成动画精灵。 首先,我们需要理解AndEngine中的精灵和动画概念。精灵是2D游戏中的基本元素,它可以是一个静态的图片或者一个动态的...
这些工具可以将多张小图片拼接成一张大图片,并生成对应的XML描述文件,记录每张小图片在大图中的位置和大小。XML文件在AndEngine中被用于解析和加载Texture Atlas。 2. 加载Texture Atlas: 在AndEngine中,我们...
本压缩包中的内容主要涉及如何使用AndEngine来直接加载多张小图片,并将它们合成一张大图片,进而生成动画精灵。下面我们将详细探讨这一技术。 首先,我们需要理解AndEngine中的精灵(Sprite)概念。精灵是2D游戏中...
本压缩包中的源码示例是关于如何利用AndEngine来实现一个高级功能:直接加载多张小图片并将其合成为一张大图片,进而生成动画精灵。这个技术在游戏开发中极为常见,用于制作角色移动、攻击等动态效果。 首先,我们...
这个知识点讲解了如何将图片压缩后保存在数据库中,并详细解释了图片压缩、图片存储在数据库、使用 Java 保存图片到数据库、数据库表字段、Java 图片处理、数据库字段存储图片和小图片存储在数据库的过程。
所谓拼图游戏,是指将一个完整的图片分割成若干个规则的小图片,然后将这些小图片随机地拼在一起,然后由玩家按照原图重新拼接出正确的图片。 三、设计思路 通过单击与空白网格相邻的网格,可以将该网格显示的图片...
首先将一张大图分为9块小图片,而后将小图片封装在一个类(继承JButton)因此每张图片都为一个按扭 public class Cell extends JButton { private static final long serialVersionUID = 8290188097137862984L; ...
本文将深入探讨如何在AndEngine中利用多张小图片合成一张大图,进而创建动画精灵,实现流畅的游戏动画效果。 一、精灵(Sprites)与纹理集(Texture Atlas) 在2D游戏开发中,精灵是可移动或旋转的图像对象,用于...
这个压缩包中的源码是关于如何使用AndEngine将多张小图片合成一张大图片,进而创建出动画精灵。下面将详细解释这一过程中的关键知识点。 1. **AndEngine基础**: AndEngine是一个开源的Java库,专门为Android平台...
在Java编程中,将图片与Base64编码进行互转是一种常见的操作,特别是在网页开发、数据传输和存储中。Base64编码是一种用于将二进制数据转化为ASCII字符串的编码方式,使得这些数据可以在文本格式的环境中(如电子...
* 压缩图片文件 * 先保存原文件,再压缩、上传 * @param oldFile 要进行压缩的文件全路径 * @param width 宽度 * @param height 高度 * @param quality 质量 * @param smallIcon 小图片的后缀 * @return ...