在网页中加入一个
<img src=image.jsp>在image.jsp中
<%@ page contentType="image/jpeg" %><%@ page import="java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*"%><%
BufferedImage image = new BufferedImage(300, 300, BufferedImage.TYPE_INT_RGB);
Graphics g = image.getGraphics();// Fill background
g.setColor(Color.white);
g.fillRect(0, 0, 300, 300);g.drawString("12345",100, 100);g.dispose();
ServletOutputStream sos = null;
try {
sos = response.getOutputStream();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(sos);
encoder.encode(image);
}catch(Exception e) {
sos.close();
e.printStackTrace();
}
%>

解决方案 »

  1.   

    这段代码有显示东西吗?怎么我只看见图片的占位符,而看不见图片究竟是什么样子。
    我看到的就象有一个使用了image的标记,但是图片丢失的结果。
      

  2.   

    我那段代码在drawString之前漏了g.setColor(Color.black);
      

  3.   

    <%@ page contentType="image/jpeg" %>
    <%@ page import="java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*"%><%
    BufferedImage image = new BufferedImage(300, 300, BufferedImage.TYPE_INT_RGB);
    Graphics g = image.getGraphics();// Fill background
    g.setColor(Color.white);
    g.fillRect(0, 0, 300, 300);g.setColor(Color.black);    ///加在这里是吧?可还是一样啊,象是丢了图片的一个image标记
    g.drawString("12345",100, 100);g.dispose();
    ServletOutputStream sos = null;
    try {
    sos = response.getOutputStream();
    JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(sos);
    encoder.encode(image);
    }catch(Exception e) {
    sos.close();
    // e.printStackTrace();
    out.print (e);
    }
    %>