利用java實(shí)現(xiàn)二維碼和背景圖的合并
背景介紹:
最近我們這邊需要做一個(gè)自動(dòng)生成二維碼并且還要將二維碼嵌入現(xiàn)有的背景模板中,一直又沒(méi)寫(xiě)過(guò)這些方面的東西,突然寫(xiě)還真是有點(diǎn)迷糊,特別是對(duì)于java圖片API并不很熟悉,所以參考了很多網(wǎng)友的分享,很快做出來(lái)了,現(xiàn)在分享一下
注意:
關(guān)于二維碼的生成方式在文章java生成帶logo的多彩二維碼 已經(jīng)寫(xiě)過(guò)了,大家可以合起來(lái)一起使用。
實(shí)例代碼:
BufferedImage image= bim;//二維碼 BufferedImage bg= ImageIO.read(路徑);//獲取北京圖片 Graphics2D g=bg.createGraphics(); int width=image.getWidth(null) > bg.getWidth() * 5/10? (bg.getWidth() * 5/10) : image.getWidth(null); int height=image.getHeight(null) > bg.getHeight() *5 /10? (bg.getHeight() * 5/10) : image.getWidth(null); g.drawImage(image,(bg.getWidth()- width)/2,(bg.getHeight()-height)/2,width,height,null); g.dispose(); bg.flush(); image.flush(); ImageIO.write(bg,"png", file);
二維碼的效果圖:
總結(jié)
以上就是利用java實(shí)現(xiàn)自動(dòng)生成二維碼和現(xiàn)有的背景圖合并的內(nèi)容,有需要的朋友們可以參考學(xué)習(xí)。
相關(guān)文章
Maven的生命周期與自定義插件實(shí)現(xiàn)方法
Maven的生命周期就是對(duì)所有的構(gòu)建過(guò)程進(jìn)行抽象和統(tǒng)一。包含了項(xiàng)目的清理、初始化、編譯、測(cè)試、打包、集成測(cè)試、驗(yàn)證、部署和站點(diǎn)生成等幾乎所有的構(gòu)建步驟2022-12-12Java后臺(tái)防止客戶端重復(fù)請(qǐng)求、提交表單實(shí)現(xiàn)原理
這篇文章主要介紹了Java后臺(tái)防止客戶端重復(fù)請(qǐng)求、提交表單實(shí)現(xiàn)原理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12Java實(shí)現(xiàn)XML格式與JSON格式互相轉(zhuǎn)換的方法
這篇文章主要介紹了Java實(shí)現(xiàn)XML格式與JSON格式互相轉(zhuǎn)換的方法,方法通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),選擇使用哪種格式通常取決于項(xiàng)目的需求和上下文,所以格式轉(zhuǎn)換就成了我們必備的技能,具體實(shí)現(xiàn)代碼跟隨小編一起看看吧2023-10-10SpringBoot實(shí)現(xiàn)熱部署Community的示例代碼
本文主要介紹了SpringBoot實(shí)現(xiàn)熱部署Community的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06Maven實(shí)戰(zhàn)之搭建Maven私服和鏡像的方法(圖文)
本篇文章主要介紹了搭建Maven私服和鏡像的方法(圖文),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12JAVA區(qū)間值判斷[10,20)的實(shí)現(xiàn)
本文主要介紹了JAVA區(qū)間值判斷[10,20)的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-09-09