JAVA: réalise la génération et la numérisation de divers types de codes à barres

Les codes à barres sont des données visibles et lisibles par machine qui décrivent généralement des informations sur ce que contient le code à barres. Les codes à barres sont largement utilisés dans des domaines tels que la distribution de produits, la gestion des livres, la gestion postale et les systèmes bancaires. Cet article décrit la génération et la numérisation courantes de codes à barres unidimensionnels et bidimensionnels.

Outils nécessaires:

Vous trouverez ci-dessous une liste des types de codes à barres pris en charge par la version gratuite. 9.png : top: P.s. Je veux plus de types de codes à barres. Veuillez vous référer à la version commerciale Spire.Barcode for Java.

: one: Génération de code-barres:

Il existe deux types importants de génération de codes à barres. L'un est Paramètres Barceode et l'autre est Barceode Generator. Les paramètres de code à barres sont des types spécifiques de personnalisation des codes à barres, tels que les données, la taille et la couleur. Barceode Generator crée des données d'image basées sur les paramètres Barcede. Les générations de codes à barres partielles prises en charge dans le tableau ci-dessus sont:

:black_small_square:Codebar:


import com.spire.barcode.*;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
public class CODABAR {
    public static void main(String[] args) throws Exception {
	//Create the BarcodeSettings
        BarcodeSettings settings = new BarcodeSettings();
	//Set data
        settings.setData("2030405060");
	//Set the Symbology property
        settings.setType(BarCodeType.CODABAR);
	//Set Show Text location on bottom
        settings.setShowTextOnBottom(true);
	//Set border is visible
        settings.hasBorder(true);
	//Set the CodabarStartChar and CodebarStopChar
        settings.setCodabarStartChar(CodabarChar.B);
        settings.setCodabarStopChar(CodabarChar.D);
	//Create the BarcodeGenerator
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
	//Get image from the BarcodeGenerator
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
	//Save the image
        ImageIO.write(bufferedImage,"png",new File("CODABAR.png "));
    }
}

Effet d'exécution: 1.png

:black_small_square:Code11:

import com.spire.barcode.BarCodeGenerator;
import com.spire.barcode.BarCodeType;
import com.spire.barcode.BarcodeSettings;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class CODE_11 {
    public static void main(String[] args) throws IOException {

	//Create the BarcodeSettings
        BarcodeSettings settings = new BarcodeSettings();
        //Set Data
        settings.setData("12345-67890"); 
	//Set the Symbology property
        settings.setType(BarCodeType.CODE_11);
	//Set ShowText location on bottom
        settings.setShowTextOnBottom(true);
	//Set Border is visible
        settings.hasBorder(true);
	//Create the BarCodeGenerator
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
	//Get image from the BarCodeGenerator
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
	//Save the image
        ImageIO.write(bufferedImage,"png",new File("CODE_11.png "));

    }
}

Effet d'exécution: 2.png :black_small_square:Code 39:

import com.spire.barcode.BarCodeGenerator;
import com.spire.barcode.BarCodeType;
import com.spire.barcode.BarcodeSettings;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class CODE_39 {
    public static void main(String[] args) throws IOException {
        //Create the BarcodeSettings
        BarcodeSettings settings = new BarcodeSettings();
        //Set Data
        settings.setData("Bar 987654321");
        //Set the Symbology property
        settings.setType(BarCodeType.CODE_39);
        //Set ShowText location on bottom
        settings.setShowTextOnBottom(true);
        //Set Border is visible
        settings.hasBorder(true);
        //Create the BarCodeGenerator
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
        //Get image from the BarCodeGenerator
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
        //Save the image
        ImageIO.write(bufferedImage,"png",new File("CODE_39.png "));

    }
}

Effet d'exécution: 3.png

:black_small_square:Code 128:

import com.spire.barcode.BarCodeGenerator;
import com.spire.barcode.BarCodeType;
import com.spire.barcode.BarcodeSettings;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class CODE_128 {
    public static void main(String[] args) throws IOException {
        //Create the BarcodeSettings
        BarcodeSettings settings = new BarcodeSettings();
        //Set Data
        settings.setData("ABCD 12345 abcd");
        //Set the Symbology property
        settings.setType(BarCodeType.CODE_128);
        //Set ShowText location on bottom
        settings.setShowTextOnBottom(true);
        //Set Border is visible
        settings.hasBorder(true);
        //Create the BarCodeGenerator
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
        //Get image from the BarCodeGenerator
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
        //Save the image
        ImageIO.write(bufferedImage,"png",new File("CODE_128.png "));

    }
}

Effet d'exécution: 4.png :black_small_square:QR_Code:

import com.spire.barcode.BarCodeGenerator;
import com.spire.barcode.BarCodeType;
import com.spire.barcode.BarcodeSettings;

import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class QR_CODE {
    public static void main(String[] args) throws IOException {
	 //Create the BarcodeSettings
        BarcodeSettings settings = new BarcodeSettings();
	 //Set Data
        settings.setData("ABC 123456789");
	 //Set the Symbology property
        settings.setType(BarCodeType.QR_CODE);
	 //Set the QR_CODE size
        settings.setX(2);
	 //Set ShowText location on bottom
        settings.setShowTextOnBottom(true);
	 //Set Border is visible
        settings.hasBorder(true);
	 //Create the BarCodeGenerator
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
         //Get image from the BarCodeGenerator
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
	 //Save the image
        ImageIO.write(bufferedImage,"png",new File("QR_CODE.png "));

    }
}

Effet d'exécution: 5.png : deux: Scan de code-barres:

Il s'agit d'une tentative de numériser plusieurs jeux de codes à barres ensemble et de lire plusieurs données de codes à barres à l'aide de la méthode scan () des scanners de codes à barres. L'image et le code sont les suivants. 6.png

            public class Scan {
            public static void main(String[] args) throws Exception {

                  //Get code information by scanning the image   
             String[] s=BarcodeScanner.scan("C:\\Users\\Administrator\\Desktop\\Barcode.png ");
                  for (int i=0;i< s.length ;i++){
                 System.out.println(s[i]);
                     }
                   }
                 }

Effet d'exécution: 7.png

Recommended Posts

JAVA: réalise la génération et la numérisation de divers types de codes à barres
Avantages et inconvénients de Java
Diverses méthodes de la classe Java String
À propos de Biocontainers fastqc et Java
[Java] Divers résumés joints aux chefs de classe et aux membres
Après 3 mois de formation Java et Spring
[Java / Swift] Comparaison de l'interface Java et du protocole Swift
Introduction du guide de programmation Java de nouvelle génération (Java 10)
Introduction du guide de programmation Java de nouvelle génération (Java 11)
Résumé de Java Math.random et import (calendrier)
[Java] Contenu de l'interface de collection et de l'interface de liste
Introduction du guide de programmation Java de nouvelle génération (Java 12)
Discrimination d'énum dans Java 7 et supérieur
[Java] Résumé personnel des classes et méthodes (basique)
Traitement parallèle et parallèle dans divers langages (édition Java)
[Java] La partie déroutante de String et StringBuilder
J'ai comparé les caractéristiques de Java et .NET
Divers tableau de correspondance de Spring Framework et Spring Boot
[Java] Mémo de classification d'erreur de compilation et d'erreur d'exécution
Java permet l'extraction de texte et d'images PDF
Génération de séquence Java
Java et JavaScript
XXE et Java
[Java] Présentation de Java
[Java] Types de commentaires et comment les rédiger
Résumé du comportement de ToString avec les annotations Java et Groovy
Veuillez noter la division (division) de java kotlin Int et Int
La comparaison d'énumération est ==, et equals est bonne [Java]
Organiser l'état actuel de Java et envisager l'avenir
Langage Java du point de vue de Kotlin et C #
[Java] À propos de Objects.equals () et examen de la comparaison de chaînes (== et égal à)
J'ai résumé les types et les bases des exceptions Java
Liste des instructions Java fréquemment utilisées (pour les débutants et les débutants)
Utilisation correcte de la classe abstraite et de l'interface en Java
Comparaison équivalente de la classe wrapper Java et du type primitif
[Java] [Kotlin] Appeler valueOf et les valeurs de Enum de manière générique
[Java10] Veillez à utiliser ensemble var et génériques
[Java] Gestion des chaînes de caractères (classe String et classe StringBuilder)