欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

java制作gif代碼 gif,制作

java有沒有什么辦法讓按鈕里顯示gif

完全可以,程序如下,這里把圖片和程序放在一塊,不放在一起的話。

昌寧ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

代碼Icon?icon=new?ImageIcon("1.gif");//要給出圖片的完整的路徑。

圖片資源:

import?java.awt.*;

import?javax.swing.*;

public?class?JFrameTest?extends?JFrame{

/**

*?@param?args

*/

private?static?final?long?serialVersionUID=1L;

JFrameTest(String?name){

super(name);

this.setSize(200,?200);//設(shè)置窗口大小。

this.setBackground(Color.DARK_GRAY);//設(shè)置背景顏色。

this.setLayout(new?FlowLayout());//設(shè)置順序布局。

Container?con=this.getContentPane();//獲取容器。

//設(shè)置按鈕,為按鈕添加圖片。

Icon?icon=new?ImageIcon("1.gif");//根據(jù)路徑取出圖片。

JButton?button=new?JButton("帶圖片的按鈕",icon);

con.add(button);//添加按鈕。

this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);//設(shè)置默認(rèn)的關(guān)閉方式。

}

public?static?void?main(String[]?args)?{

JFrameTest?test=new?JFrameTest("按鈕");

? test.setVisible(true);

}

}

運(yùn)行結(jié)果:

java 如何生成動(dòng)態(tài)的gif圖片

實(shí)現(xiàn)思路:無論是何種類型,都是轉(zhuǎn)換為流的形式進(jìn)行的文件傳輸和存儲(chǔ)。

可以通過BufferedReader 流的形式進(jìn)行流緩存,之后通過readLine方法獲取到緩存的內(nèi)容。

BufferedReader bre = null;

OutputStreamWriter pw = null;//定義一個(gè)流

try {

String file = "D:/test/test.GIF";

bre = new BufferedReader(new FileReader(file));//此時(shí)獲取到的bre就是整個(gè)文件的緩存流

pw = new OutputStreamWriter(new FileOutputStream(“D:/New.GIF”),"GBK");//確認(rèn)流的輸出文件和編碼格式,此過程創(chuàng)建了“test.GIF”實(shí)例

while ((str = bre.readLine())!= null) // 判斷最后一行不存在,為空結(jié)束循環(huán)

{

pw.write(str);//將要寫入文件的內(nèi)容,可以多次write

};

bre.close();

pw.close();//關(guān)閉流

備注:文件流用完之后必須及時(shí)通過close方法關(guān)閉,否則會(huì)一直處于打開狀態(tài),直至程序停止,增加系統(tǒng)負(fù)擔(dān)。

求一個(gè)Java語言編寫的gif動(dòng)態(tài)驗(yàn)證碼 就是百度注冊(cè)用戶的那種

你好,

Servlet類:

import?java.io.IOException;

import?javax.servlet.ServletException;

import?javax.servlet.http.HttpServlet;

import?javax.servlet.http.HttpServletRequest;

import?javax.servlet.http.HttpServletResponse;

public?class?ImageServlet?extends?HttpServlet?{

private?static?final?long?serialVersionUID?=?1L;

@Override

public?void?doGet(HttpServletRequest?request,?HttpServletResponse?response)

throws?ServletException,?IOException?{

response.setContentType("image/gif");//設(shè)置相應(yīng)類型,告訴瀏覽器輸出的內(nèi)容為圖片

response.setHeader("Pragma",?"No-cache");//設(shè)置響應(yīng)頭信息,告訴瀏覽器不要緩存此內(nèi)容

response.setHeader("Cache-Control",?"no-cache");

response.setDateHeader("Expire",?0);

RandomValidateCode?randomValidateCode?=?new?RandomValidateCode();

try?{

randomValidateCode.getRandcode(request,?response);//輸出圖片方法

}?catch?(Exception?e)?{

e.printStackTrace();

}

}

@Override

public?void?doPost(HttpServletRequest?request,?HttpServletResponse?response)

throws?ServletException,?IOException?{

doGet(request,?response);

}

}

生成圖片的類:

import?java.awt.Color;

import?java.awt.Font;

import?java.awt.Graphics;

import?java.awt.image.BufferedImage;

import?java.util.Random;

import?javax.imageio.ImageIO;

import?javax.servlet.http.HttpServletRequest;

import?javax.servlet.http.HttpServletResponse;

import?javax.servlet.http.HttpSession;

public?class?RandomValidateCode?{

public?static?final?String?RANDOMCODEKEY?=?"RANDOMVALIDATECODEKEY";//放到session中的key

private?Random?random?=?new?Random();

private?String?randString?=?"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";//隨機(jī)產(chǎn)生的字符串

private?int?width?=?80;//圖片寬

private?int?height?=?26;//圖片高

private?int?lineSize?=?25;//干擾線數(shù)量

private?int?stringNum?=?4;//隨機(jī)產(chǎn)生字符數(shù)量

/**

*?生成隨機(jī)圖片

*/

public?void?getRandcode(HttpServletRequest?request,

HttpServletResponse?response)?{

HttpSession?session?=?request.getSession();

BufferedImage?image?=?new?BufferedImage(width,height,BufferedImage.TYPE_INT_BGR);

Graphics?g?=?image.getGraphics();

g.fillRect(0,?0,?width,?height);

g.setFont(new?Font("Times?New?Roman",Font.ROMAN_BASELINE,18));

g.setColor(getRandColor(180,?233));

//繪制干擾線

for(int?i=0;i=lineSize;i++){

drowLine(g);

}

//繪制隨機(jī)字符

String?randomString?=?"";

for(int?i=1;i=stringNum;i++){

randomString=drowString(g,randomString,i);

}

session.removeAttribute(RANDOMCODEKEY);

session.setAttribute(RANDOMCODEKEY,?randomString);

g.dispose();

try?{

ImageIO.write(image,?"JPEG",?response.getOutputStream());

}?catch?(Exception?e)?{

e.printStackTrace();

}

}

//?-------------?private?methods?-------------

/*

*?獲得字體

*/

private?Font?getFont(){

return?new?Font("Fixedsys",Font.CENTER_BASELINE,18);

}

/*

*?獲得顏色

*/

private?Color?getRandColor(int?fc,int?bc){

if(fc??255)

fc?=?255;

if(bc??255)

bc?=?255;

int?r?=?fc?+?random.nextInt(bc-fc-16);

int?g?=?fc?+?random.nextInt(bc-fc-14);

int?b?=?fc?+?random.nextInt(bc-fc-18);

return?new?Color(r,g,b);

}

/*

*?繪制字符串

*/

private?String?drowString(Graphics?g,String?randomString,int?i){

g.setFont(getFont());

g.setColor(new?Color(random.nextInt(101),random.nextInt(111),random.nextInt(121)));

String?rand?=?String.valueOf(getRandomString(random.nextInt(randString.length())));

randomString?+=rand;

g.translate(random.nextInt(3),?random.nextInt(3));

g.drawString(rand,?13*i,?16);

return?randomString;

}

/*

*?繪制干擾線

*/

private?void?drowLine(Graphics?g){

int?x?=?random.nextInt(width);

int?y?=?random.nextInt(height);

int?xl?=?random.nextInt(13);

int?yl?=?random.nextInt(15);

g.drawLine(x,?y,?x+xl,?y+yl);

}

/*

*?獲取隨機(jī)的字符

*/

private?String?getRandomString(int?num){

return?String.valueOf(randString.charAt(num));

}

}

網(wǎng)頁名稱:java制作gif代碼 gif,制作
本文鏈接:http://chinadenli.net/article18/hpejgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)微信公眾號(hào)微信小程序ChatGPTGoogle

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作