JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--程序代码--代码收集  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
将一图片同比例缩小绘制
作者:whilvydy     文章来源:http://www.jspcn.net
访问次数:2606次     加入时间:2004年11月14日
在获得客户端的一个图片后,发现传过来的图片太大,不宜在已经排版好的格式里面显示出来,特别是页面的图片特别多时,更不能都让大图片缩小显示。
一般遇到图片问题,有以下几种解决方案:

一、规定(自定义)图片大小
在该位置,图片是多大就显示多大,
这种情况简单易行,但图片易变形,图片太大,导致页面打开速度过慢

二、获得图片尺寸
也因图片过大,不宜在图片过多的也面中显示

下面介绍一种方法,可以读取大图片并生成一个小图片,以解决图片问题。


/*
 * Created on 2004-10-11
 *
 * TODO To change the template for this generated file go to
 * Window - Preferences - Java - Code Style - Code Templates
 */
package net.jspcn.test;

import java.io.File; 
import java.io.FileOutputStream; 
import java.awt.Image; 
import java.awt.image.BufferedImage; 

import com.sun.image.codec.jpeg.JPEGCodec; 
import com.sun.image.codec.jpeg.JPEGImageEncoder; 

public class JpgTest { 

public void jpgTset() throws Exception{ 

File _file = new File("d:1.jpg"); //读入文件 
Image src = javax.imageio.ImageIO.read(_file); //构造Image对象 
int wideth=src.getWidth(null); //得到源图宽 
int height=src.getHeight(null); //得到源图长 
BufferedImage tag = new BufferedImage(wideth/2,height/2,BufferedImage.TYPE_INT_RGB); 
tag.getGraphics().drawImage(src,0,0,wideth/2,height/2,null); //绘制缩小后的图 
FileOutputStream out=new FileOutputStream("D:newfile.jpg"); //输出到文件流 
//File file = new File("D:newFile.jpg"); 
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
//JPEGImageEncoder encoder = JPEGCodec.c
encoder.encode(tag); //近JPEG编码 
out.close(); 

public static void main(String[] args){ 

try{ 
new JpgTest().jpgTset(); 
}catch(Exception e){ 

e.printStackTrace(); 






当然,在此基础上,你可以写一图片处理程序,批量的处理你的图片
JSP虚拟主机 | JSP空间 | JSP主机 | JSP双线虚拟主机 | JAVA空间 | JAVA虚拟主机 | 虚拟服务器 | JSP 虚拟服务器 | VPS
Virtual Private Server | JAVA虚拟服务器 | VM服务器 | VHOST | 虚拟操作系统 | JSP论坛 | JAVA论坛 | JSP站点论坛
Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号