大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java二維碼生成器zxing的介紹

Java二維碼生成器zxing的介紹

更新時間:2022-10-24 10:10:25 來源:動力節點 瀏覽2247次

zxing是最簡單且最好用的。如果要生成二維碼圖片,那么我們只需要它的核心庫即可。只需將以下依賴項添加到您的 Maven 項目中。

<dependency>
	<groupId>com.google.zxing</groupId>
	<artifactId>core</artifactId>
	<version>3.3.2</version>
</dependency>

如果你想通過命令行讀取二維碼圖片,那么我們需要使用它的JavaSE庫。您可以為其添加以下依賴項。

<dependency>
	<groupId>com.google.zxing</groupId>
	<artifactId>javase</artifactId>
	<version>3.3.2</version>
</dependency>

這還將讓您知道從命令行運行所需的兩個額外依賴項,如下圖所示。我們必須將這些 jars 添加到類路徑中以運行客戶端應用程序以讀取 QR 碼圖像。我們將在本教程的后面部分看到這一點。

zxing 示例生成二維碼圖片

這是您可以使用 zxing API 創建二維碼圖像的程序。GenerateQRCode.java

package com.journaldev.qrcode.generator;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Hashtable;
import javax.imageio.ImageIO;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.EncodeHintType;
import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
public class GenerateQRCode {
	public static void main(String[] args) throws WriterException, IOException {
		String qrCodeText = "https://www.journaldev.com";
		String filePath = "JD.png";
		int size = 125;
		String fileType = "png";
		File qrFile = new File(filePath);
		createQRImage(qrFile, qrCodeText, size, fileType);
		System.out.println("DONE");
	}
	private static void createQRImage(File qrFile, String qrCodeText, int size, String fileType)
			throws WriterException, IOException {
		// Create the ByteMatrix for the QR-Code that encodes the given String
		Hashtable<EncodeHintType, ErrorCorrectionLevel> hintMap = new Hashtable<>();
		hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
		QRCodeWriter qrCodeWriter = new QRCodeWriter();
		BitMatrix byteMatrix = qrCodeWriter.encode(qrCodeText, BarcodeFormat.QR_CODE, size, size, hintMap);
		// Make the BufferedImage that are to hold the QRCode
		int matrixWidth = byteMatrix.getWidth();
		BufferedImage image = new BufferedImage(matrixWidth, matrixWidth, BufferedImage.TYPE_INT_RGB);
		image.createGraphics();
		Graphics2D graphics = (Graphics2D) image.getGraphics();
		graphics.setColor(Color.WHITE);
		graphics.fillRect(0, 0, matrixWidth, matrixWidth);
		// Paint and save the image using the ByteMatrix
		graphics.setColor(Color.BLACK);
		for (int i = 0; i < matrixWidth; i++) {
			for (int j = 0; j < matrixWidth; j++) {
				if (byteMatrix.get(i, j)) {
					graphics.fillRect(i, j, 1, 1);
				}
			}
		}
		ImageIO.write(image, fileType, qrFile);
	}
}

zxing示例讀取二維碼

如果您沒有移動應用程序來測試它,請不要擔心。您可以通過命令行使用 zxing API 讀取二維碼。下面是讀取二維碼圖像文件的命令。請注意 zxing 依賴的類路徑中的附加 jar。

$java -cp $HOME/.m2/repository/com/google/zxing/javase/3.3.2/javase-3.3.2.jar:.:$HOME/.m2/repository/com/google/zxing/core/3.3.2/core-3.3.2.jar:$HOME/.m2/repository/com/beust/jcommander/1.72/jcommander-1.72.jar:$HOME/.m2/repository/com/github/jai-imageio/jai-imageio-core/1.3.1/jai-imageio-core-1.3.1.jar com.google.zxing.client.j2se.CommandLineRunner JD.png

下圖顯示了此命令產生的輸出。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲毛片网| 久久综合综合久久狠狠狠97色 | 色老头老太xxxxbbbb | 国产亚洲欧美在线视频 | 一本伊大人香蕉高清在线观看 | 四虎影视最新网站在线播放 | 亚洲一区二区福利视频 | 久操综合 | 四虎成人精品在永久在线观看 | 国产成人一区二区三区免费观看 | 青草免费免费观看视频在线 | 狠狠操天天射 | 国产成人一区二区三区视频免费蜜 | 亚洲精品一区二区三区中文字幕 | 成人国产综合 | 精品欧美高清一区二区免费 | 毛片免费全部播放一级 | 毛片大全免费观看 | 亚洲精品在线视频观看 | 亚洲欧洲一区二区三区久久 | 免费国产一级特黄aa大片在线 | 四虎影视永久免费观看地址 | 777午夜精品被窝影院 | 四虎b7j77com| 97影院理论午夜论不卡 | 亚洲精品第一区二区在线 | 6一10周岁毛片在线 717影院理论午夜伦八戒 | 国产亚洲精品一区二区三区 | 欧美久久超级碰碰碰二区三区 | 亚洲成a人v | 国产一级成人毛片 | 精品国产96亚洲一区二区三区 | 婷婷综合社区 | 9久热久re爱免费精品视频 | 97色97色97色成人 | 久久日韩 | 一级毛片牲交大片 | 欧美成人毛片免费网站 | 在线 v亚洲 v欧美v 专区 | 91亚洲国产系列精品第56页 | 99在线观看精品 |