成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何從JSP頁面傳送動態圖片

開發 后端
你是否曾經想過從JSP頁面(或者servlet)中發送動態產生的圖像?這篇文章會告訴你如何去做。

要運行本文的代碼,你需要一個Tomcat或者其他支持JSP 1.1的Web服務器。

當一個Web頁面帶有image/jpeg (或者其他的圖像格式)的MIME類型被發送時,你的瀏覽器將那個返回結果當作一個圖像,然后瀏覽器顯示圖像,作為頁面的一部分或者完全作為圖像自身。要為你的jsp頁面設置MIME類型,你需要設置頁面的contentType屬性:

然后你需要創建一個BufferedImage繪制你的動態圖像:

BufferedImage image = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);

創建完一個BufferedImage后,你需要得到圖形環境進行繪制,一個Graphics或者Graphics2D對象:

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 
align=center borderColorLight=black border=1> <tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6> Graphics g = image.getGraphics(); // or Graphics2d g2d = image.createGraphics();</td></tr> </table>

從現在起你就可以繪制圖像內容了。對圖形環境繪制就會畫到BufferedImage。最開始這個圖像都是黑色的,因此用你希望的背景顏色填充圖像是一個不錯的主意,然后,當你完成圖像的繪制,你需要dispose圖形環境:

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 
align=center borderColorLight=black border=1>
<tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>
g.dispose();
// or
g2d.dispose();</td></tr>
</table>

一旦完成圖像的繪制,你在response中返回那個圖像。你可以使用非標準的com.sun.image.codec.jpeg包中的JPEGImageEncoder類編碼圖像,或者如果你使用JDK1.4,你可以使用標準的ImageIO類。在使用JPEGImageEncoder時有一個技巧,你必須從ServletResponse取來ServletOutputStream而不能使用隱含的JSP輸出變量out。

<table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 
align=center borderColorLight=black border=1>
<tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>
ServletOutputStream sos = response.getOutputStream();
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(sos);
encoder.encode(image);
// or
ImageIO.write(image, "JPEG", out);</td></tr>
</table>

這里有一個從所有的可能方案中(例如g.dispose();或者g2d.dispose();)選取的一個完整的范例.這個例子使用Graphics對象繪制一個隨機的多邊形,圖像通過JPEGImageEncoder繪制,你可以自由設置多邊形的頂點數得到更復雜的形狀,換言之,有更多頂點和邊。

要運行這個范例,將從""之間的jsp代碼放到一個名為image.jsp的文件中,將那個文件放到你的web服務器可以找到的地方,在使用Tomcat的情況下是ROOT目錄,啟動Tomcat,訪問http://localhost:8080/image.jsp

 <table cellSpacing=0 borderColorDark=#ffffff cellPadding=2 width=400 align=center borderColorLight=black border=1>
<tr> <td class=code style="FONT-SIZE: 9pt" bgColor=#e6e6e6>
 <%@ page contentType="image/jpeg"
  import="java.awt.*,java.awt.image.*,
  com.sun.image.codec.jpeg.*,java.util.*"
  %>  
  <%
  // Create image
  int width=200, height=200;
  BufferedImage image = new BufferedImage(width,
  height, BufferedImage.TYPE_INT_RGB);
  // Get drawing context  
  Graphics g = image.getGraphics();
  // Fill background
  g.setColor(Color.white);
  g.fillRect(0, 0, width, height);
  // Create random polygon
  Polygon poly = new Polygon();
  Random random = new Random();
  for (int i=0; i < 5; i++) {
  poly.addPoint(random.nextInt(width),
  random.nextInt(height));
  }
  // Fill polygon
  g.setColor(Color.cyan);
  g.fillPolygon(poly);
  // Dispose context
  g.dispose();
  // Send back image
  ServletOutputStream sos = response.getOutputStream();
  JPEGImageEncoder encoder =
  JPEGCodec.createJPEGEncoder(sos);
  encoder.encode(image);
  %>

【編輯推薦】

  1. 高性能、高彈性JSP和Servlet性能優化
  2. JSTL和EL開發JSP頁面的優勢及實現
  3. JSP中JavaBean應用步驟詳解
責任編輯:楊鵬飛 來源: Java吧
相關推薦

2009-07-03 10:52:33

MIDletJSP頁面

2012-05-24 15:41:38

PHP

2009-07-02 13:36:24

動態頁面JSP技術

2009-12-08 11:16:07

PHP動態圖像創建

2009-06-30 15:22:55

JSP頁面

2009-08-11 13:27:09

C#動態圖像按鈕

2009-07-02 14:24:02

JSP讀取數據庫

2009-07-03 18:12:49

JSP頁面

2021-04-18 20:49:03

Pyecharts圖表 組件

2009-07-06 09:34:19

JSP頁面

2009-07-01 18:50:29

Dreamweaver

2017-07-05 16:22:09

HTML5canvas動態

2009-07-06 10:00:31

JSP頁面傳值

2009-06-10 17:03:36

JSP動態生成

2009-07-07 15:07:59

JSP上傳圖片

2009-03-16 15:07:20

JSP分頁window.openJSP表單

2021-05-13 15:23:31

人工智能深度學習

2009-07-02 10:13:47

ASP和JSPJSP頁面

2009-07-06 18:23:56

Struts和JSPJSP頁面

2009-02-25 10:55:29

FCKeditor控件JSP
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人免费视频网站高清观看视频 | 亚洲激精日韩激精欧美精品 | 91精品国产一区二区 | 亚洲国产电影 | 91社区在线高清 | 精品欧美乱码久久久久久 | 欧美日韩在线成人 | 超碰91在线 | 九九视频在线观看视频6 | 青青久久av北条麻妃海外网 | 男人av网| 另类专区成人 | 亚洲性人人天天夜夜摸 | 91精品国产乱码久久久久久久久 | 国产精品福利网 | 亚洲一区视频在线 | 国产精品99久久久久久动医院 | 国产精品久久久久久亚洲调教 | 国产伦精品一区二区三区精品视频 | 国产精品黄色 | 日日摸日日添日日躁av | 亚洲视频在线一区 | 在线一区 | 99re国产精品 | 国产美女黄色 | 国产精品视频免费播放 | 日本精品久久久久久久 | 在线视频91 | 二区欧美 | 91国产视频在线观看 | 国产日韩中文字幕 | 99综合 | 久久综合久久久 | 我想看一级黄色毛片 | 国产精品揄拍一区二区 | 久久久精品日本 | 亚洲日韩中文字幕一区 | 午夜精品一区 | 正在播放国产精品 | 国产免费一级一级 | 欧美高清成人 |