{"id":169,"date":"2017-02-18T18:03:44","date_gmt":"2017-02-18T17:03:44","guid":{"rendered":"http:\/\/union31xh.free.fr\/?p=169"},"modified":"2017-02-20T18:43:39","modified_gmt":"2017-02-20T17:43:39","slug":"zxing-scan-de-qrcode-et-de-codes-barres","status":"publish","type":"post","link":"https:\/\/blogperso.union31.fr\/?p=169","title":{"rendered":"Zxing : scan de QRCODE et de Codes barres"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Sommaire<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/blogperso.union31.fr\/?p=169\/#I_Introduction\" >I Introduction<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/blogperso.union31.fr\/?p=169\/#II_Avant_de_coder\" >II Avant de coder<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/blogperso.union31.fr\/?p=169\/#III_Exemple_de_codes_java\" >III Exemple de codes java<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/blogperso.union31.fr\/?p=169\/#III1_java\" >III.1 java<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/blogperso.union31.fr\/?p=169\/#III2_java_android\" >III.2 java android<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h1><span class=\"ez-toc-section\" id=\"I_Introduction\"><\/span>I Introduction<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<p>Librairie open source pour g\u00e9n\u00e9rer des codes barres et \u00e9galement en lire<\/p>\n<p>Lien site web : <a href=\"https:\/\/github.com\/zxing\/zxing\/\" target=\"_blank\">https:\/\/github.com\/zxing\/zxing\/<\/a><\/p>\n<p>La lecture des codes est particuli\u00e8rement efficace !!! Poss\u00e8de une \u00ab\u00a0m\u00e9thode\u00a0\u00bb de type d\u00e9code \u00ab\u00a0tout\u00a0\u00bb. Pratique pour ne pas chercher longtemps sur ce sujet.<\/p>\n<p>&nbsp;<\/p>\n<h1><span class=\"ez-toc-section\" id=\"II_Avant_de_coder\"><\/span>II Avant de coder<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<p>Aller sur la page <a href=\"https:\/\/github.com\/zxing\/zxing\/wiki\/Getting-Started-Developing\" target=\"_blank\">https:\/\/github.com\/zxing\/zxing\/wiki\/Getting-Started-Developing<\/a><\/p>\n<p>Cliquer sur le lien \u00ab\u00a0<a href=\"https:\/\/repo1.maven.org\/maven2\/com\/google\/zxing\/\" target=\"_blank\">Maven release repository<\/a>\u00a0\u00bb puis aller dans le r\u00e9pertoire \u00ab\u00a0core\u00a0\u00bb pour aller r\u00e9cup\u00e9rer les .jar<\/p>\n<p>S\u00e9lectionner la version puis t\u00e9l\u00e9charger les fichiers .jar<\/p>\n<h1><span class=\"ez-toc-section\" id=\"III_Exemple_de_codes_java\"><\/span>III Exemple de codes java<span class=\"ez-toc-section-end\"><\/span><\/h1>\n<h2><span class=\"ez-toc-section\" id=\"III1_java\"><\/span>III.1 java<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Sous l&rsquo;EDI Netbeans ajouter les fichiers jar suivants :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-178\" src=\"http:\/\/union31xh.free.fr\/wp-content\/uploads\/2017\/02\/xzing-dependance-projet-netbeans.png\" alt=\"\" width=\"251\" height=\"165\" \/><\/p>\n<p>Exemple d&rsquo;\u00e9criture et de lecture de codes (lecture QRcode et EAN13 et lecture QRcode)<\/p>\n<p>[pastacode lang=\u00a0\u00bbjava\u00a0\u00bb manual=\u00a0\u00bbpackage%20zxing_test1%3B%0A%0Aimport%20com.google.zxing.BarcodeFormat%3B%0Aimport%20com.google.zxing.BinaryBitmap%3B%0Aimport%20com.google.zxing.ChecksumException%3B%0Aimport%20com.google.zxing.FormatException%3B%0Aimport%20com.google.zxing.MultiFormatReader%3B%0Aimport%20com.google.zxing.NotFoundException%3B%0Aimport%20com.google.zxing.RGBLuminanceSource%3B%0Aimport%20com.google.zxing.Result%3B%0Aimport%20com.google.zxing.WriterException%3B%0Aimport%20com.google.zxing.common.BitMatrix%3B%0Aimport%20com.google.zxing.common.HybridBinarizer%3B%0Aimport%20com.google.zxing.qrcode.QRCodeWriter%3B%0Aimport%20java.awt.image.BufferedImage%3B%0Aimport%20java.io.File%3B%0Aimport%20java.io.IOException%3B%0Aimport%20javax.imageio.ImageIO%3B%0A%0A%2F**%0A%20*%20%40author%20Union31xh%0A%20*%2F%0Apublic%20class%20Zxing_test1%20%7B%0A%0A%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-%0A%20%20%20%2F%2F%20Cr%C3%A9er%20un%20QR-CODE%0A%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-%20%0A%20%20%20public%20static%20void%20writeQRCode(String%20texte)%20throws%20IOException%20%7B%0A%20%20%20%20QRCodeWriter%20writer%20%3D%20new%20QRCodeWriter()%3B%0A%20%20%20%20int%20width%20%3D%20256%2C%20height%20%3D%20256%3B%0A%20%20%20%20BufferedImage%20image%20%3D%20new%20BufferedImage(width%2C%20height%2C%20BufferedImage.TYPE_INT_RGB)%3B%20%2F%2F%20create%20an%20empty%20image%0A%20%20%20%20int%20white%20%3D%20255%20%3C%3C%2016%20%7C%20255%20%3C%3C%208%20%7C%20255%3B%0A%20%20%20%20int%20black%20%3D%200%3B%0A%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20BitMatrix%20bitMatrix%20%3D%20writer.encode(texte%2C%20BarcodeFormat.QR_CODE%2C%20width%2C%20height)%3B%0A%20%20%20%20%20%20%20%20for%20(int%20i%20%3D%200%3B%20i%20%3C%20width%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20(int%20j%20%3D%200%3B%20j%20%3C%20height%3B%20j%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20image.setRGB(i%2C%20j%2C%20bitMatrix.get(i%2C%20j)%20%3F%20black%20%3A%20white)%3B%20%2F%2F%20set%20pixel%20one%20by%20one%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20ImageIO.write(image%2C%20%22jpg%22%2C%20new%20File(%22dynamsoftbarcode.jpg%22))%3B%20%2F%2F%20save%20QR%20image%20to%20disk%0A%20%20%20%20%20%20%20%20%7D%20catch%20(IOException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%20catch%20(WriterException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%7D%0A%7D%0A%20%20%20%20%0A%20%20%20%20%20%20%20%20%0A%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-%0A%20%20%20%2F%2F%20lire%20tout%20type%20de%20code%0A%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-%0Apublic%20static%20String%20readQRCode(String%20fileName)%20throws%20ChecksumException%2C%20FormatException%20%7B%0A%20%20%20%20File%20file%20%3D%20new%20File(fileName)%3B%0A%20%20%20%20BufferedImage%20image%20%3D%20null%3B%0A%20%20%20%20BinaryBitmap%20bitmap%20%3D%20null%3B%0A%20%20%20%20Result%20result%20%3D%20null%3B%0A%20%0A%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20image%20%3D%20ImageIO.read(file)%3B%0A%20%20%20%20%20%20%20%20int%5B%5D%20pixels%20%3D%20image.getRGB(0%2C%200%2C%20image.getWidth()%2C%20image.getHeight()%2C%20null%2C%200%2C%20image.getWidth())%3B%0A%20%20%20%20%20%20%20%20RGBLuminanceSource%20source%20%3D%20new%20RGBLuminanceSource(image.getWidth()%2C%20image.getHeight()%2C%20pixels)%3B%0A%20%20%20%20%20%20%20%20bitmap%20%3D%20new%20BinaryBitmap(new%20HybridBinarizer(source))%3B%0A%20%20%20%20%7D%20catch%20(IOException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%7D%0A%20%0A%20%20%20%20if%20(bitmap%20%3D%3D%20null)%0A%20%20%20%20%20%20%20%20return%20null%3B%0A%20%0A%20%20%20%20%2F%2FQRCodeReader%20reader%20%3D%20new%20QRCodeReader()%3B%20%20%20%0A%20%20%20%20MultiFormatReader%20reader%20%3D%20new%20MultiFormatReader()%3B%0A%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20result%20%3D%20reader.decode(bitmap)%3B%0A%20%20%20%20%20%20%20%20return%20result.getText()%3B%0A%20%20%20%20%7D%20catch%20(NotFoundException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%7D%20%2F*%20catch%20(ChecksumException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%7D%20catch%20(FormatException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20Auto-generated%20catch%20block%0A%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%7D%0A%20%20%20%20*%2F%0A%20%0A%20%20%20%20return%20null%3B%0A%7D%0A%20%20%20%0A%0A%20%20%20%20public%20static%20void%20main(String%5B%5D%20args)%20throws%20WriterException%2C%20IOException%2C%20ChecksumException%2C%20FormatException%20%7B%0A%20%20%20%20%20%20%20%20%2F%2F%20TODO%20code%20application%20logic%20here%0A%20%20%20%20%20%20%20%20writeQRCode(%22long%20texte%20de%20Union31xh%20h%C3%A9h%C3%A9%20!!!%20C&rsquo;est%20tr%C3%A8s%20bien%20tout%20%C3%A7a%20!!!!%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20String%20texte%20%3D%20%22%22%3B%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20texte%20%3D%20readQRCode(%22exemple_qrcode.png%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22R%C3%A9sultat%20%3A%20%22%20%2B%20texte)%3B%0A%0A%20%20%20%20%20%20%20%20texte%20%3D%20readQRCode(%22qrcode_test1.jpg%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22R%C3%A9sultat%20%3A%20%22%20%2B%20texte)%3B%0A%0A%20%20%20%20%20%20%20%20texte%20%3D%20readQRCode(%22qrcode_test2.jpg%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22R%C3%A9sultat%20%3A%20%22%20%2B%20texte)%3B%0A%0A%20%20%20%20%20%20%20%20texte%20%3D%20readQRCode(%22qrcode_test3.png%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22R%C3%A9sultat%20%3A%20%22%20%2B%20texte)%3B%0A%0A%20%20%20%20%20%20%20%20texte%20%3D%20readQRCode(%22exemple_code_barre.png%22)%3B%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22R%C3%A9sultat%20%3A%20%22%20%2B%20texte)%3B%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20System.out.println(%22&#8211;%3E%20Fin%22)%3B%0A%20%20%20%20%7D%0A%0A%20%20%20%20%0A%20%20%20%20%0A%7D%0A\u00a0\u00bb message=\u00a0\u00bb\u00a0\u00bb highlight=\u00a0\u00bb\u00a0\u00bb provider=\u00a0\u00bbmanual\u00a0\u00bb\/]<\/p>\n<p>&nbsp;<\/p>\n<h2><span class=\"ez-toc-section\" id=\"III2_java_android\"><\/span>III.2 java android<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Le code va r\u00e9cup\u00e9rer une image stock\u00e9e dans un \u00ab\u00a0ImageView\u00a0\u00bb.<\/p>\n<p>Dans Android studio il faut mettre dans le r\u00e9pertoire Projet\/app\/libs du projet les fichiers jar suivants :<\/p>\n<ul>\n<li>core-3.3.0.jar<\/li>\n<li>core-3.3.0-javadoc.jar<\/li>\n<\/ul>\n<p>Puis d\u00e9clarer les d\u00e9pendances dans le projet :<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-176\" src=\"http:\/\/union31xh.free.fr\/wp-content\/uploads\/2017\/02\/xzing-dependance-projet.png\" alt=\"\" width=\"596\" height=\"438\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>Ecriture d&rsquo;un Qrcode :<\/p>\n<p>[pastacode lang=\u00a0\u00bbjava\u00a0\u00bb manual=\u00a0\u00bb%20%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-%0A%20%20%20%20%2F%2F%20G%C3%A9n%C3%A8re%20un%20qrcode%20dans%20un%20Imageview%0A%20%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;%0A%20%20%20%20public%20void%20Genere_QRCode(String%20texte)%20%7B%0A%0A%20%20%20%20%20%20%20%20ImageView%20mImageView%20%3D%20(ImageView)%20findViewById(R.id.mimageView)%3B%0A%0A%20%20%20%20%20%20%20%20QRCodeWriter%20writer%20%3D%20new%20QRCodeWriter()%3B%0A%20%20%20%20%20%20%20%20try%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20int%20width%20%3D%20mImageView.getWidth()%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20int%20height%20%3D%20mImageView.getHeight()%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20BitMatrix%20bitMatrix%20%3D%20writer.encode(texte%2C%20BarcodeFormat.QR_CODE%2C%20width%2C%20height)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20Bitmap%20bitmap%20%3D%20Bitmap.createBitmap(width%2C%20height%2C%20Bitmap.Config.ARGB_8888)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20for%20(int%20i%20%3D%200%3B%20i%20%3C%20width%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20for%20(int%20j%20%3D%200%3B%20j%20%3C%20height%3B%20j%2B%2B)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20bitmap.setPixel(i%2C%20j%2C%20bitMatrix.get(i%2C%20j)%20%3F%20Color.BLACK%3A%20Color.WHITE)%3B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20mImageView.setImageBitmap(bitmap)%3B%0A%20%20%20%20%20%20%20%20%7D%20catch%20(WriterException%20e)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20e.printStackTrace()%3B%0A%20%20%20%20%20%20%20%20%7D%0A%0A%0A%20%20%20%20%7D\u00a0\u00bb message=\u00a0\u00bb\u00a0\u00bb highlight=\u00a0\u00bb\u00a0\u00bb provider=\u00a0\u00bbmanual\u00a0\u00bb\/]<\/p>\n<p>&nbsp;<\/p>\n<p>Lecture d&rsquo;un code :<\/p>\n<p>[pastacode lang=\u00a0\u00bbjava\u00a0\u00bb manual=\u00a0\u00bb%20%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;%0A%20%20%20%20%2F%2F%20Lit%20un%20code%20barre%20par%20exempe%0A%20%20%20%20%2F%2F%20&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;%0A%20%20%20%20public%20void%20Lecture_QRCode()%20throws%20NotFoundException%20%7B%0A%0A%20%20%20%20%20%20%20%20MultiFormatReader%20reader%20%3D%20new%20MultiFormatReader()%3B%0A%20%20%20%20%20%20%20%20ImageView%20mImageView%20%3D%20(ImageView)%20findViewById(R.id.mimageView)%3B%0A%20%20%20%20%20%20%20%20int%20top%20%3D%200%3B%0A%20%20%20%20%20%20%20%20int%20left%20%3D%200%3B%0A%0A%20%20%20%20%20%20%20%20BitmapDrawable%20drawable%20%3D%20(BitmapDrawable)%20mImageView.getDrawable()%3B%0A%20%20%20%20%20%20%20%20Bitmap%20bitmap%20%3D%20drawable.getBitmap()%3B%0A%0A%20%20%20%20%20%20%20%20int%20width%20%3D%20bitmap.getWidth()%3B%0A%20%20%20%20%20%20%20%20int%20height%20%3D%20bitmap.getHeight()%3B%0A%20%20%20%20%20%20%20%20int%5B%5D%20pixels%20%3D%20new%20int%5Bwidth%20*%20height%5D%3B%0A%20%20%20%20%20%20%20%20bitmap.getPixels(pixels%2C%200%2C%20width%2C%200%2C%200%2C%20width%2C%20height)%3B%0A%20%20%20%20%20%20%20%20%2F%2Fbitmap.recycle()%3B%0A%20%20%20%20%20%20%20%20%2F%2Fbitmap%20%3D%20null%3B%0A%20%20%20%20%20%20%20%20RGBLuminanceSource%20source%20%3D%20new%20RGBLuminanceSource(width%2C%20height%2C%20pixels)%3B%0A%20%20%20%20%20%20%20%20BinaryBitmap%20bBitmap%20%3D%20new%20BinaryBitmap(new%20HybridBinarizer(source))%3B%0A%20%20%20%20%20%20%20%20Result%20resultat_scan%3B%0A%20%20%20%20%20%20%20%20resultat_scan%20%3D%20reader.decode(bBitmap)%3B%0A%20%20%20%20%20%20%20%20if%20(resultat_scan%20!%3D%20null)%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20Toast.makeText(this%2C%20%22R%C3%A9sultat%20%3A%22%20%2B%20resultat_scan.getText()%2C%20Toast.LENGTH_SHORT).show()%3B%0A%20%20%20%20%20%20%20%20%7D%20%0A%0A%20%20%20%20%7D\u00a0\u00bb message=\u00a0\u00bb\u00a0\u00bb highlight=\u00a0\u00bb\u00a0\u00bb provider=\u00a0\u00bbmanual\u00a0\u00bb\/]<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I Introduction Librairie open source pour g\u00e9n\u00e9rer des codes barres et \u00e9galement en lire Lien site web : https:\/\/github.com\/zxing\/zxing\/ La lecture des codes est particuli\u00e8rement efficace !!! Poss\u00e8de une \u00ab\u00a0m\u00e9thode\u00a0\u00bb de type d\u00e9code \u00ab\u00a0tout\u00a0\u00bb. Pratique pour ne pas chercher longtemps<\/p>\n","protected":false},"author":1,"featured_media":173,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-169","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-_dev"],"_links":{"self":[{"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/posts\/169","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=169"}],"version-history":[{"count":1,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/posts\/169\/revisions"}],"predecessor-version":[{"id":225,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/wp\/v2\/posts\/169\/revisions\/225"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=\/"}],"wp:attachment":[{"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=169"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=169"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogperso.union31.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=169"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}