Это краткое руководство объясняет, как преобразовать PDF в QR-код с использованием Java. Оно содержит детали настройки IDE для использования Aspose.PDF и Aspose.BarCode, список шагов и пример кода для преобразования PDF в QR-код с использованием Java. В нем также описано, как читать QR-коды и штрих-коды из PDF и сохранять их как изображения при необходимости.
Шаги преобразования PDF в QR-код с использованием Java
- Настройте IDE для использования Aspose.PDF и Aspose.BarCode для Java для чтения QR-кодов из PDF
- Загрузите исходный PDF-файл в объект класса Document для преобразования PDF в QR-код
- Перебирайте каждую страницу и получайте доступ к коллекции графических ресурсов на ней
- Анализируйте каждое изображение на странице и сохраняйте его как изображение в потоке памяти
- Инициализируйте считыватель штрих-кода для каждого изображения для чтения всех поддерживаемых типов QR и штрих-кодов
- Отображайте текст и тип штрих-кода или QR-кода на экране
Эти шаги описывают, как преобразовать PDF в QR-код с использованием Java. Загрузите входной PDF-файл, перебирайте все страницы, получайте доступ к коллекции изображений из ресурсов на каждой странице и используйте каждое изображение для инициализации объекта считывателя штрих-кода. Возвращается коллекция штрих-кодов и QR-кодов, доступных из изображения, с их текстом, типом и другими параметрами для отображения и дальнейшей обработки.
Код для создания QR-кода из PDF с использованием Java
// Necessary import statements | |
import com.aspose.pdf.*; | |
import com.aspose.barcode.barcoderecognition.*; | |
import com.aspose.barcode.License; | |
import java.io.ByteArrayOutputStream; | |
import java.io.IOException; | |
// Custom namespace for the application | |
public class Main { | |
// Application's entry method | |
public static void main(String[] args) throws Exception {// For PDF to QR | |
// Set up licenses for Aspose.PDF and Aspose.BarCode | |
com.aspose.pdf.License pdfLicense = new com.aspose.pdf.License();// PDF License | |
pdfLicense.setLicense("License.lic");// Remove watermark from output | |
License barcodeLicense = new License(); | |
barcodeLicense.setLicense("License.lic"); | |
Document pdfDocument = new Document("bar_qr_code.pdf"); | |
for (int pageIndex = 1; pageIndex <= pdfDocument.getPages().size(); pageIndex++) { | |
Page page = pdfDocument.getPages().get_Item(pageIndex); | |
// Check if the page contains images | |
if (page.getResources().getImages().size() > 0) { | |
// Process each image in the page | |
for (XImage image : page.getResources().getImages()) { | |
ByteArrayOutputStream imgStream = new ByteArrayOutputStream(); | |
// Save the image to a memory stream in JPEG format | |
image.save(imgStream, ImageType.getJpeg()); | |
byte[] imgBytes = imgStream.toByteArray(); | |
// Initialize the barcode reader for the image | |
BarCodeReader reader = new BarCodeReader( | |
new java.io.ByteArrayInputStream(imgBytes), | |
DecodeType.ALL_SUPPORTED_TYPES); | |
// Retrieve and display barcode results | |
for (BarCodeResult result : reader.readBarCodes()) { | |
String barcodeText = result.getCodeText(); | |
String barcodeType = result.getCodeTypeName(); | |
System.out.println("Detected " + barcodeType + " with content: " + barcodeText); | |
} | |
} | |
} | |
} | |
} | |
} |
Приведенный выше код демонстрирует, как преобразовать изображения в PDF в QR с использованием Java. Вы можете фильтровать страницы PDF на основе набора свойств для доступа только к целевым страницам. Вы можете сохранять каждое изображение на диск в дополнение к использованию его в считывателе штрих-кодов. Для этого можно записать данные изображения в файл на диск после сохранения в ByteArrayOutputStream.
Эта статья научила нас, как читать штрих-коды и QR-коды из PDF. Для генерации новых QR-кодов см. статью как генерировать QR-код с использованием Java.