簡單的數字驗證碼生成
阿新 • • 發佈:2019-02-01
//1.建立記憶體有映像物件(畫板)
BufferedImage image = new BufferedImage(80,30,BufferedImage.TYPE_INT_RGB);/*樣式*/
//2.獲取畫筆
Graphics g = image.getGraphics();
//3.給畫筆設定顏色
g.setColor(new Color(255,255,255));
//4.設定背景色
g.fillRect(0,0,80,30);
//5.設定前景顏色
Random r = new Random();
g.getColor(new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255 ));
//6.繪圖
g.setFont(new Font(null,Font.ITALIC,24));//字型、風格、大小
String number = r.nextInt(10000)+"";
g.drawString(number,5,26);//左下角座標
//7.干擾線
for(int i=0;i<6;i++) {
g.drawLine(r.nextInt(80),r.nextInt(30),r.nextInt(80),r.nextInt(30));//兩點一線
}
////////////////////////////////////////////////////////////////
//將圖片壓縮併發送給瀏覽器
response.setContextType("image/jpeg");
OutputString ops = response.getOutputStream();
javax.imageio.imageIO.write(image,"jpeg" ,ops);
ops.close();