小編給大家分享一下怎么在java中制作比心圖案,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
10年積累的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先做網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有北鎮(zhèn)免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
Java的特點(diǎn)有哪些 1.Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,實(shí)現(xiàn)了面向?qū)ο罄碚?,允許程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程。 2.Java具有簡(jiǎn)單性、面向?qū)ο?、分布式、安全性、平臺(tái)獨(dú)立與可移植性、動(dòng)態(tài)性等特點(diǎn)。 3.使用Java可以編寫桌面應(yīng)用程序、Web應(yīng)用程序、分布式系統(tǒng)和嵌入式系統(tǒng)應(yīng)用程序等。
本教程操作環(huán)境:windows7系統(tǒng)、java10版,DELL G3電腦。
1、改變Spring啟動(dòng)時(shí)候的圖標(biāo)
這一步太簡(jiǎn)單了,就是在Spring項(xiàng)目下的resources文件夾下加一個(gè)banner.txt即可。
這個(gè)時(shí)候你可以創(chuàng)建完了文件之后,隨便加一些符號(hào)嘗試一下即可。
2、自定義圖案
可以找到一個(gè)心儀的圖片,然后通過(guò)下方程序自動(dòng)生成符號(hào)圖案。
import javax.imageio.ImageIO; import javax.swing.*; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; public class AscPic { public static void main(String[] args) throws IOException { String path = "d:/heart3.jpg";//導(dǎo)入的圖片 String base = "love";//將會(huì)用這個(gè)字符串里的字符填充圖片 BufferedImage image = ImageIO.read(new File(path));//讀入圖片,并用圖片緩沖區(qū)對(duì)象來(lái)接收 float scale = (float) 1; //獲取縮放后的寬高 int width = (int) (image.getWidth()*scale)*3; int height = (int) (image.getHeight()*scale); //調(diào)用縮放方法獲取縮放后的圖片 Image img = image.getScaledInstance(width , height, Image.SCALE_DEFAULT); image = toBufferedImage(img); int[][] imageArray = new int[image.getHeight()][image.getWidth()]; int[] sum = new int[image.getWidth()]; int cnt = 0; //雙層for循環(huán),遍歷圖片 for (int y = 0; y < image.getHeight(); y++) {//先豎向遍歷,再橫向遍歷,即一行一行的找,后面也會(huì)一行一行的打印 for (int x = 0; x < image.getWidth(); x++) { int color = image.getRGB(x, y);//圖片緩沖區(qū)自帶的方法,可以得到當(dāng)前點(diǎn)的顏色值,返回值是int類型 int r=(color>>16)&0xff; int g=(color>>8)&0xff; int b=color&0xff; float gray = 0.299f * r + 0.578f * g + 0.114f * b;//灰度值計(jì)算公式,固定比例,無(wú)需理解 int index = Math.round(gray * (base.length()) / 255); if(index>=base.length()) { imageArray[y][x] = -1; }else { imageArray[y][x] = cnt++; sum[x]+=index; } } } for(int i = 0;i<image.getHeight();i++){ for(int j = 0;j<image.getWidth();j++){ if(sum[j]==0) continue; else if(imageArray[i][j]==-1) System.out.print(" ");//白色的地方打空格,相當(dāng)于白色背景,這樣圖片輪廓比較明顯 else System.out.print(base.charAt(imageArray[i][j]%base.length()));//有顏色的地方打字符 } System.out.println();//一行打完,換行 } } public static BufferedImage toBufferedImage(Image image) { if (image instanceof BufferedImage) { return (BufferedImage) image; } image = new ImageIcon(image).getImage(); boolean hasAlpha = false; BufferedImage bimage = null; GraphicsEnvironment ge = GraphicsEnvironment .getLocalGraphicsEnvironment(); try { int transparency = Transparency.OPAQUE; if (hasAlpha) { transparency = Transparency.BITMASK; } GraphicsDevice gs = ge.getDefaultScreenDevice(); GraphicsConfiguration gc = gs.getDefaultConfiguration(); bimage = gc.createCompatibleImage(image.getWidth(null), image .getHeight(null), transparency); } catch (HeadlessException e) { } if (bimage == null) { int type = BufferedImage.TYPE_INT_RGB; if (hasAlpha) { type = BufferedImage.TYPE_INT_ARGB; } bimage = new BufferedImage(image.getWidth(null), image .getHeight(null), type); } Graphics g = bimage.createGraphics(); g.drawImage(image, 0, 0, null); g.dispose(); return bimage; } }
3、通過(guò)運(yùn)行上面的代碼+這個(gè)簡(jiǎn)單的圖案,可以生成一個(gè)灰白色的比心圖案,如下所示
以上是“怎么在java中制作比心圖案”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
分享名稱:怎么在java中制作比心圖案
網(wǎng)址分享:http://aaarwkj.com/article36/peispg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、網(wǎng)站排名、網(wǎng)站制作、動(dòng)態(tài)網(wǎng)站、電子商務(wù)、標(biāo)簽優(yōu)化
聲明:本網(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í)需注明來(lái)源: 創(chuàng)新互聯(lián)