JSP中在内存中生成的图片显示到页面中

ZDNet软件频道 时间:2008-06-28 作者: | 中国IT实验室 我要评论()
本文关键词:显示 生成 JSP
JSP中在内存中生成的图片显示到页面中
 <%@ page autoFlush="false" import="java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*"%>
  <%
    String ImageStr = request.getParameter("ID_Text");
    if(ImageStr==null || ImageStr.equals(""))
    {
      response.setContentType("text/html; charset=gb2312");
   %>
  <HTML>
   <HEAD>
   <title>Http://www.lionsky.net</title>
   <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
   </HEAD>
   <body>
   <form id="Form1" method="post">
    <input type="text" id="ID_Text" name=ID_Text>
    <input type=submit value="GO">
   </form>
   </body>
  </HTML>
  
  <%
      }
      else
      {
      out.clear();
      response.setContentType("image/jpeg");
      response.addHeader("pragma","NO-cache");
      response.addHeader("Cache-Control","no-cache");
      response.addDateHeader("Expries",0);
      int width=300, height=100;
      BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
      Graphics g = image.getGraphics();
      //以下填充背景颜色
      g.setColor(Color.lightGray);
      g.fillRect(0, 0, width, height);
      String random="random";
      //以下设置前景色
      g.setColor(Color.BLACK);
      g.drawString("Http://www.lionsky.net",10,20);
      g.drawString("Author:Lion[lion-a@sohu.com]",10,40);
      g.drawLine(10,50,290,50);
      g.drawString(ImageStr,10,70);
      g.dispose();
      ServletOutputStream outStream = response.getOutputStream();
      JPEGImageEncoder encoder =JPEGCodec.createJPEGEncoder(outStream);
      encoder.encode(image);
      outStream.close();
    }
  
  %>

百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134