Как генерировать и считывать QR-код в Java
QR-коды (Quick Response) — это двумерные штрих-коды, которые могут хранить широкий спектр информации, например URL-адреса веб-сайтов, контактные данные или информацию о продукте. Они обеспечивают удобный способ быстрого доступа к данным и обмена ими с помощью смартфонов или других устройств, оснащенных камерой.
В этой статье я рассмотрю процесс программной генерации QR-кодов и их считывания с помощью библиотеки Spire.Barcode for Java.
- Генерация QR-кода с логотипом по центру в Java
- Считывание QR-кода в Java
Установите файл Spire.Barcode.jar
Если вы
создали проект Maven, вы можете легко импортировать jar-файл в свое приложение
с помощью следующих конфигураций. Для проектов, не использующих Maven,
загрузите jar-файл по этой ссылке
и добавьте его в качестве зависимости в ваше приложение.
Получите бесплатную пробную лицензию
Коммерческая версия имеет некоторые ограничения на отдельные функции, которые можно устранить, приобретя лицензию. Вы можете обратиться в отдел продаж и запросить 30-дневную бесплатную пробную лицензию. Лицензия может быть применена по ключу в вашей программе через эту строку кода.
LicenseProvider.setLicenseKey("Your License Key");
Генерация QR-кода с логотипом по центру в Java
Библиотека Spire.Barcode for Java включает класс BarcodeSettings, который используется для настройки свойств генерируемого штрихкода. Например, вы можете задать тип штрихкода с помощью метода setType() и указать данные для штрихкода с помощью метода setData(). С этими настройками создается объект BarCodeGenerator, предлагающий метод generateImage() для генерации изображения штрихкода.
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import com.spire.barcode.BarCodeGenerator;
import com.spire.barcode.BarCodeType;
import com.spire.barcode.BarcodeSettings;
import com.spire.barcode.QRCodeECL;
import com.spire.barcode.license.LicenseProvider;
public class GenerateQRCode {
public static void main(String[] args) throws IOException {
// Apply a temporary license
LicenseProvider.setLicenseKey("Your License Key");
// Create a BarcodeSettings object
BarcodeSettings settings = new BarcodeSettings();
// Set barcode type as QR code
settings.setType(BarCodeType.QR_Code);
// Set barcode data
settings.setData("https://medium.com/@alexaae9″);
// Do not display text on QR code
settings.setShowText(false);
// Set border to none
settings.hasBorder(false);
// Set width of the barcode module
settings.setX(2);
// Set error correction level
settings.setQRCodeECL(QRCodeECL.M);
// Set fore color
settings.setForeColor(Color.black);
// Add a logo at the center
BufferedImage image = ImageIO.read(new File("C:\Users\Administrator\Desktop\MyLogo.png"));
settings.setQRCodeLogoImage(image);
// Create BarCodeGenerator object based on settings
BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
// Generate image data and store in BufferedImage
BufferedImage bufferedImage = barCodeGenerator.generateImage();
// save to image
ImageIO.write(bufferedImage,"png",new File("MyQRCodeWithLogo.png"));
}
}
Считывание QR-кода в Java
Используя метод BarcodeScanner.scanOne() из Spire.Barcode, пользователи могут легко получить данные из изображения QR-кода. Вот пример.
import com.spire.barcode.BarcodeScanner;
import com.spire.barcode.license.LicenseProvider;
public class ReadQRCode {
public static void main(String[] args) throws Exception {
// Apply a temporary license
LicenseProvider.setLicenseKey("Your License Key");
// Scan a QR code image
String data = BarcodeScanner.scanOne("C:\Users\Administrator\Desktop\MyQRCode.png");
System.out.print(data);
}
}
Заключение
В этой статье мы узнали, как создать QR-код с пользовательскими настройками в Java, а также как получить данные с изображения QR-кода с помощью Spire.Barocde for Java.