黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

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

Java二維碼生成器zxing的介紹

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

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

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

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 综合网色| 欧美午夜精品久久久久免费视 | 天天舔日日干 | a级午夜毛片免费一区二区 a级午夜理论免费毛片 | 亚洲欧洲中文字幕 | 黄色搞基网站 | 国产成人精彩在线视频50 | 91在线亚洲| 欧美巨大xxxx做受孕妇视频 | 有色hd| 久草视频在线资源站 | 亚洲精品一二三区-久久 | jizzjizz日本老师水放 | 久久久久香蕉 | 校园激情综合网 | h在线观看视频 | 国产在线日韩 | 一个人看的免费视频www中国 | 宅男在线影院 | 日韩色综合 | 日本成人a视频 | 日韩午夜高清福利片在线观看 | 久草久 | 免费嗨片| 久久这里知有精品99re66 | 久久大香伊蕉在人线国产联合 | 国产欧美日韩另类va在线 | 午夜剧场伦理 | 国产欧美精品一区二区三区四区 | 日韩精品中文字幕视频一区 | 黄色一级黄色 | 日韩欧美h | 韩国三级理伦片 | 91成人午夜精品福利院在线观看 | 中国国产高清一级毛片 | 亚洲免费毛片 | 男女男在线观看视频网站 | 成年大片免费播放视频人 | 草草网| 麻豆啪啪 | 国产卡1卡2卡三卡网站免费 |