小蚂蚁 发表于 2021-10-24 20:16:09

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

Imaging_ToWeb.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.knowsky.com",10,20);
      g.drawString("Author:Lion",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();
    }
%>


https://www.uoften.com/program/jsp/20180413/47301.html
页: [1]
查看完整版本: 将JSP在内存生成的图片显示到页面