二維碼生成代碼實現如下:
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import com.swetake.util.Qrcode;
/**
* @ClassName:WeiXin_Code
* @author 許肖飛
* @Description 二維碼圖片
* @date 2017年10月19日
*/
public class WeiXin_Code {
/**
*
* @param content 顯示的內容
* @param imgPath 生成成功后存放的路徑
*/
public static void getQrcodeImage(String content, String imgPath) {
int width = 235;
int height = 235;
// 實例化一個對象
Qrcode qrcode = new Qrcode();
// 編碼方式
qrcode.setQrcodeEncodeMode('B');
// 設置拍錯率
qrcode.setQrcodeErrorCorrect('M');
// 二維碼的版本
qrcode.setQrcodeVersion(15);
// 繪制二維碼
// 畫板
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_INT_RGB);
// 畫筆
Graphics2D gs = image.createGraphics();
// 設置背景顏色 白色
gs.setBackground(Color.white);
// 設置二維碼的顏色
gs.setColor(Color.black);
// 創建一個二維碼的繪制區域
gs.clearRect(0, 0, width, height);
byte[] codeOut;
try {
codeOut = content.getBytes("utf-8");
boolean[][] code = qrcode.calQrcode(codeOut);
for (int i = 0; i < code.length; i++) {
for (int j = 0; j < code.length; j++) {
if (code[j][i]) {
gs.fillRect(j * 3 + 2, i * 3 + 2, 3, 3);
}
}
}
// 加載logo D:/111.png 這個你需要改成你自己的
File file = new File("D:/111.png");
Image srcImage = ImageIO.read(file);
int imgWidth = srcImage.getWidth(null);
int imgHeith = srcImage.getHeight(null);
gs.drawImage(srcImage, 83, 83, imgWidth, imgHeith, null);
// 釋放資源
gs.dispose();
image.flush();
// 寫入指定路徑
ImageIO.write(image, "png", new File(imgPath));
System.out.println("二維碼生成成功了!");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
getQrcodeImage("你好!我是二蛋", "d:/xxx.png");
}
}
轉載鏈接:https://mp.weixin.qq.com/s/DxVzvKxbm9pMELvvWshEjA
直接在開發工具上創建一個java project(java項目)然后再創建一個package(包)包里面創建一個class(類)然后直接把上面的代碼復制進去就行了!最后在項目下創建一個Fodder(目錄)建議名字為lib、然后把上面的QRCode.jar復制粘貼進去、然后選中QRCode.jar點擊鼠標的右鍵有個Build Path 點Add to Build Path即可完成!最后運行代碼就可以生成二維碼!