Servlet 动态显示图片
来源:互联网 发布:莫言透明的红萝卜知乎 编辑:程序博客网 时间:2024/05/01 09:04
在Java中,java.awt和java.awt.image包提供了基本的绘制图像的能力,我们可以在内存中绘制好需要的图形,然后编码成jpeg或其他图像格式,最后发送相应给浏览器即可。下面是使用Servlet动态创建图像的详细步骤:
1.创建BufferedImage对象,该对象存在内存中,负责保存绘制的图像;
2.创建Graphics2D对象,该对象负责绘制所需的图像;
3.当绘制完成后,调用com.sun.image.codec.jpeg包的JPEG编码器对其编码;
4.最后将编码后的数据输出至HttpResponse即可。
5. servlet 中设置contentType 为 image/jpeg
注意com.sun.image.codec.jpeg包位于JDK目录的rt.jar包中,它不是公开的API,需要将rt.jar复制到web应用程序的WEB-INF/lib下。
我们先创建一个最简单的Servlet:
package com.crackj2ee.web.util;
import java.io.*;
import java.awt.*;
import java.awt.image.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.sun.image.codec.jpeg.*;
/**
* @author fxl
*/
public class CreateImageServlet extends HttpServlet
{
protected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException,IOException
{
response.setContentType("image/jpeg");
createImage(response.getOutputStream());
}
private void createImage(OutputStream out)
{
int width = 100;
int height = 100;
BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g = bi.createGraphics();
// set background:
g.setBackground(Color.BLUE);
g.clearRect(0, 0, width, height);
// set fore color:
g.setColor(Color.RED);
// start draw:
g.drawLine(0, 0, 99, 199);
// end draw:
g.dispose();
bi.flush();
// encode:
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param = encoder.getDefaultJPEGEncodeParam(bi);
param.setQuality(1.0f, false);
encoder.setJPEGEncodeParam(param);
try {
encoder.encode(bi);
}
catch(IOException ioe) {
ioe.printStackTrace();
}
}
}
- Servlet 动态显示图片
- servlet生成动态图片
- SERVLET显示图片
- 使用Servlet动态生成图片
- Java Servlet动态生成图片
- 使用Servlet动态生成图片
- 用servlet动态生成图片
- Servlet学习:在Servlet中显示图片
- JSP: 调用servlet 显示图片
- oracle 数据库显示图片(Servlet)
- JSP调用Servlet显示图片
- JSP调用Servlet显示图片
- 图片动态显示
- extjs动态显示图片
- gif动态图片显示
- extjs 动态显示图片
- 动态显示图片gif
- vc 动态显示图片
- C#窗口编程实现StepPage效果
- 两篇关于IME的文章
- 与上司相处之道
- 你的学校有乱收费吗?(附教育部文件)
- 毕业序言
- Servlet 动态显示图片
- 使用VBScript 中的类组织开发
- Chapter 8. Validation Controls
- Requiring Data Entry
- Checking a Range
- Validating Expressions
- Creating Your Own Validation
- Summarizing Validation Messages
- Comparing Values