如何用java实现一个可爱的Github初始头像生成器
生活随笔
收集整理的這篇文章主要介紹了
如何用java实现一个可爱的Github初始头像生成器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先保存你的Github初始頭像。仔細觀察這張圖片,發(fā)現:
1.這是一張420 420像素的圖片。
2.主要部分為隨機生成的5*5像素圖形,顏色隨機,并且左右對稱。
3.四周有等寬的邊框,并且,經測量,邊框(背景)顏色為(240,240,240,255);邊框的寬度為34像素。
以下為主類:
package p; import java.awt.Color; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import java.util.Random; import javax.swing.JFrame; public class AvaterGenerator {public static final int L=420,F=34; //L為圖像邊長,F為邊框長度public static void main(String[] args){DrawAvater da = new DrawAvater();JFrame f=new JFrame("Profile");f.setSize(L+22,L+56); //JFrame的標題欄也會占像素,因此增加一個常數校正Color c = new Color(240,240,240); //背景色f.setBackground(c);f.setLocation(200,200);f.setVisible(true); f.add(da);//鍵盤監(jiān)聽,按空格調用repaint函數,生成一個新頭像f.addKeyListener(new KeyAdapter(){public void keyPressed(KeyEvent e){if(e.getKeyCode()==KeyEvent.VK_SPACE) da.repaint();}});} }以下為畫板類:
package p; import java.awt.Color; import java.awt.Graphics; import java.util.Random; import javax.swing.JPanel; public class DrawAvater extends JPanel {boolean fillin[][];protected void paintComponent ( Graphics g ) {super.paintComponent(g);//隨機生成圖形矩陣:Random r = new Random();boolean[][] fillin= new boolean[5][5];//隨機生成左半部分:for(int j=0;j<2;j++){for(int i=0;i<5;i++){fillin[i][j]=r.nextBoolean();}}//隨機生成中間一列:for(int j=2,i=0;i<5;i++){fillin[i][j]=r.nextBoolean();}//鏡像生成右半部分:for(int j=3;j<5;j++){for(int i=0;i<5;i++){fillin[i][j]=fillin[i][4-j];}}int p=(AvaterGenerator.L-2*AvaterGenerator.F)/5; //p為每個著色像素塊的邊長Color c = new Color(r.nextInt(255),r.nextInt(255),r.nextInt(255),50+r.nextInt(205));//隨機生成顏色。4個隨機生成的參數為:RGB和透明度,透明度不宜太低for(int i=0;i<5;i++){for(int j=0;j<5;j++){g.setColor(c); if(fillin[i][j]){g.fillRect(j*p+AvaterGenerator.F, i*p+AvaterGenerator.F, p, p);}}}} }運行程序,單擊空格,你可以得到許許多多可愛的頭像。
總結
以上是生活随笔為你收集整理的如何用java实现一个可爱的Github初始头像生成器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mediawiki安装经验分享
- 下一篇: 2020蓝天杯论文评比系统_获奖通报 |