二維碼生成代碼實現


二維碼生成代碼實現如下: 

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即可完成!最后運行代碼就可以生成二維碼!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM