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

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

Java二維碼生成器zxing的介紹

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

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

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

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

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 亚洲人成在线免费观看 | 日韩h片在线观看 | 午夜在线免费观看视频 | 在线播放 亚洲 | 黑人一区二区三区中文字幕 | 成人免费在线看片 | 亚洲第一免费网站 | 韩国午夜影院 | 精品女同一区二区三区免费播放 | 中文字幕视频在线观看 | 欧美人成a视频www | 色综合狠狠操 | 欧美精品国产一区二区 | 小黄漫画激情四射在线观看 | 九九热精品视频在线播放 | 成年人免费网址 | 禁视频网站在线观看漫画 | 日批免费观看 | 国产精品成人h片在线 | 天天操免费视频 | 一个人看的www免费观看 | 视频一区二区三区自拍 | 性视频网| 一级黄色毛片 | 深夜a级毛片免费视频 | 日韩一区二区三区免费视频 | 成年人午夜在线 | 免费簧网站永久在线播放国产 | 中文字幕第10页 | 午夜黄网 | 欧美成人精品手机在线观看 | 日本一区二区三区不卡在线视频 | 男人女人真曰批视频大全免费观看 | 天天夜夜爽 | 国产xxxx| 全网免费在线播放视频入口 | 麻豆一区| 国产免费无遮挡在线观看视频 | 美女日批在线观看 | 日本资源站 | 久久久青草青青亚洲国产免观 |