Java : Exemple de générateur de code QR simple - Créez des codes QR gratuitement
Publié: 2020-01-16
Scannez ceci : vous serez redirigé vers https://crunchify.com
Le QR code
(abrégé de Quick Response Code
) est la marque déposée d'un type de code-barres matriciel (ou code-barres bidimensionnel) initialement conçu pour l'industrie automobile au Japon. Les codes à barres sont des étiquettes optiques lisibles par machine attachées aux articles qui enregistrent des informations relatives à l'article. Initialement breveté, son titulaire a choisi de ne pas exercer ces droits. Récemment, le système QR Code est devenu populaire en dehors de l'industrie automobile en raison de sa lisibilité rapide et de sa plus grande capacité de stockage par rapport aux codes-barres UPC standard.
Le code est constitué de modules noirs (points carrés) disposés dans une grille carrée sur fond blanc. ZXING
est une bibliothèque de traitement d'images de codes-barres 1D/2D multiformat avec des clients pour Android, Java. Il s'agit d'une bibliothèque de traitement d'images de codes-barres 1D/2D open source et multiformat implémentée en Java, avec des ports vers d'autres langages.
Exemple de paiement en direct :
Notre objectif est d'utiliser la caméra intégrée sur les téléphones mobiles pour scanner et décoder les codes-barres sur l'appareil, sans communiquer avec un serveur. Cependant, le projet peut également être utilisé pour encoder et décoder des codes-barres sur les ordinateurs de bureau et les serveurs.
Voici un code Java simple qui génère un code QR pour vous.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
package crunchify . com . tutorials ; 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 ; import javax . imageio . ImageIO ; import java . awt . * ; import java . awt . image . BufferedImage ; import java . io . File ; import java . io . IOException ; import java . util . EnumMap ; import java . util . Map ; /** * @author Crunchify.com * Simple QR Code Generator Example - Create QR codes for free. */ public class CrunchifyQRCodeGenerator { public static void main ( String [ ] args ) { String myCodeText = "https://crunchify.com" ; String filePath = "//cdn.crunchify.com/Users/app/Document/Crunchify.com-QRCode.png" ; int size = 512 ; String crunchifyFileType = "png" ; File crunchifyFile = new File ( filePath ) ; try { Map < EncodeHintType , Object > crunchifyHintType = new EnumMap < EncodeHintType , Object > ( EncodeHintType . class ) ; crunchifyHintType . put ( EncodeHintType . CHARACTER_SET , "UTF-8" ) ; // Now with version 3.4.1 you could change margin (white border size) crunchifyHintType . put ( EncodeHintType . MARGIN , 1 ) ; /* default = 4 */ Object put = crunchifyHintType . put ( EncodeHintType . ERROR_CORRECTION , ErrorCorrectionLevel . H ) ; QRCodeWriter mYQRCodeWriter = new QRCodeWriter ( ) ; // throws com.google.zxing.WriterException BitMatrix crunchifyBitMatrix = mYQRCodeWriter . encode ( myCodeText , BarcodeFormat . QR_CODE , size , size , crunchifyHintType ) ; int CrunchifyWidth = crunchifyBitMatrix . getWidth ( ) ; // The BufferedImage subclass describes an Image with an accessible buffer of crunchifyImage data. BufferedImage crunchifyImage = new BufferedImage ( CrunchifyWidth , CrunchifyWidth , BufferedImage . TYPE_INT_RGB ) ; // Creates a Graphics2D, which can be used to draw into this BufferedImage. crunchifyImage . createGraphics ( ) ; // This Graphics2D class extends the Graphics class to provide more sophisticated control over geometry, coordinate transformations, color management, and text layout. // This is the fundamental class for rendering 2-dimensional shapes, text and images on the Java(tm) platform. Graphics2D crunchifyGraphics = ( Graphics2D ) crunchifyImage . getGraphics ( ) ; // setColor() sets this graphics context's current color to the specified color. // All subsequent graphics operations using this graphics context use this specified color. crunchifyGraphics . setColor ( Color . white ) ; // fillRect() fills the specified rectangle. The left and right edges of the rectangle are at x and x + width - 1. crunchifyGraphics . fillRect ( 0 , 0 , CrunchifyWidth , CrunchifyWidth ) ; // TODO: Please change this color as per your need crunchifyGraphics . setColor ( Color . BLUE ) ; for ( int i = 0 ; i < CrunchifyWidth ; i ++ ) { for ( int j = 0 ; j < CrunchifyWidth ; j ++ ) { if ( crunchifyBitMatrix . get ( i , j ) ) { crunchifyGraphics . fillRect ( i , j , 1 , 1 ) ; } } } // A class containing static convenience methods for locating // ImageReaders and ImageWriters, and performing simple encoding and decoding. ImageIO . write ( crunchifyImage , crunchifyFileType , crunchifyFile ) ; System . out . println ( "\nCongratulation.. You have successfully created QR Code.. \n" + "Check your code here: " + filePath ) ; } catch ( WriterException e ) { System . out . println ( "\nSorry.. Something went wrong...\n" ) ; e . printStackTrace ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; } } } |
Sortie : (Scannez-le par vous-même)

Quelle bibliothèque dois-je télécharger ?
Si vous avez un projet Maven, incluez cette dépendance dans votre fichier pom.xml.

1 2 3 4 5 6 |
< dependency > < groupId > com . google . zxing < / groupId > < artifactId > core < / artifactId > < version > 3.4.1 < / version > < / dependency > |

OU Téléchargez le fichier .jar manuellement
Étape 1:
Lien de téléchargement.

Étape 2
Une fois que vous l'avez téléchargé, vous devez l'inclure dans le chemin de classe de votre projet. Comment ajouter un fichier .jar au chemin de génération du projet dans Eclipse.

Faites-moi savoir si vous rencontrez un problème pour générer un code QR.