Heim  >  Artikel  >  Java  >  Verwenden Sie Java, um QR-Code-Code-Sharing zu generieren

Verwenden Sie Java, um QR-Code-Code-Sharing zu generieren

巴扎黑
巴扎黑Original
2017-07-18 15:11:101665Durchsuche

Eigenschaften des QR-Codes:

1. Kodierung mit hoher Dichte, große Informationskapazität

Kann bis zu 1850 Großbuchstaben oder 2710 Zahlen oder 1108 Bytes aufnehmen, Mit mehr als 500 chinesischen Schriftzeichen ist die Informationskapazität etwa ein Dutzend Mal höher als bei gewöhnlichen Barcodes.

2. Großer Codierungsbereich

Dieser Barcode kann Bilder, Töne, Texte, Unterschriften, Fingerabdrücke und andere digitalisierte Informationen codieren und sie mit Barcodes darstellen in mehreren Sprachen; kann Bilddaten darstellen.

3. Starke Fehlertoleranz und Fehlerkorrekturfunktion

Dadurch kann der 2D-Barcode auch dann korrekt gelesen werden, wenn er aufgrund von Perforationen, Flecken usw. teilweise beschädigt ist. , können Informationen immer noch wiederhergestellt werden, wenn 50 % des beschädigten Bereichs beschädigt sind.

Hohe Decodierungszuverlässigkeit

Die Fehlerrate bei der Decodierung gewöhnlicher Barcodes liegt bei 2 Teilen pro Million und die Bitfehlerrate überschreitet nicht 10 Millionen Teil.

5. Verschlüsselungsmaßnahmen können eingeführt werden

Gute Vertraulichkeit und Fälschungssicherheit.

6. Kostengünstig, einfach herzustellen, langlebig

Aufgrund der oben genannten Eigenschaften werden QR-Codes immer beliebter und ihre Anwendungen werden immer vielfältiger weit verbreitet ( Ausführliche Informationen finden Sie in der Baidu-Enzyklopädie (die Einführung steht nicht im Mittelpunkt dieses Artikels). Daher ist das Wissen über die Entwicklung von QR-Codes eine sehr gute Wissensreserve. In diesem Artikel wird daher erläutert, wie QR-Codes generiert und analysiert werden.

In diesem Artikel geht es um die Generierung und Analyse von QR-Codes durch zxing. Es sieht sehr einfach aus. Geben Sie einfach den Code direkt über den obigen Code ein. Es wird ein QR-Code mit dem Inhaltslink zu www.baidu.com generiert

import java.io.File;import java.io.IOException;import java.nio.file.Path;import java.util.HashMap;import com.google.zxing.BarcodeFormat;import com.google.zxing.EncodeHintType;import com.google.zxing.MultiFormatWriter;import com.google.zxing.WriterException;import com.google.zxing.client.j2se.MatrixToImageWriter;import com.google.zxing.common.BitMatrix;import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;public class TestZXing {public static void main(String[] args) {int width=300;int height=300;
        String format="png";
        String contents="www.baidu.com";
        HashMap map=new HashMap();
        map.put(EncodeHintType.CHARACTER_SET, "utf-8");
        map.put(EncodeHintType.ERROR_CORRECTION,ErrorCorrectionLevel.M);
        map.put(EncodeHintType.MARGIN, 0);try {
            BitMatrix bm = new MultiFormatWriter().encode(contents, BarcodeFormat.QR_CODE, width, height);
            Path file=new File("D:/img.png").toPath();
            MatrixToImageWriter.writeToPath(bm, format, file);
        } catch (WriterException e) {
            e.printStackTrace();
        } catch (IOException e) {            e.printStackTrace();
        }
    }
}

Der Code zum Parsen dieses QR-Codes lautet wie folgt

Die Ausführungsergebnisse sind wie folgt

import java.awt.image.BufferedImage;import java.io.File;import java.io.IOException;import java.util.HashMap;import javax.imageio.ImageIO;import com.google.zxing.BinaryBitmap;import com.google.zxing.EncodeHintType;import com.google.zxing.MultiFormatReader;import com.google.zxing.NotFoundException;import com.google.zxing.Result;import com.google.zxing.client.j2se.BufferedImageLuminanceSource;import com.google.zxing.common.HybridBinarizer;public class TestRead {public static void main(String[] args) {try {
            MultiFormatReader reader=new MultiFormatReader();//需要详细了解MultiFormatReader的小伙伴可以点我一下官方去看文档File f=new File("D:/img.png");
            BufferedImage image=ImageIO.read(f);
            BinaryBitmap bb=new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(image)));
            HashMap map =new HashMap();
            map.put(EncodeHintType.CHARACTER_SET, "utf-8");
            Result result = reader.decode(bb,map);
            System.out.println("解析结果:"+result.toString());
            System.out.println("二维码格式类型:"+result.getBarcodeFormat());
            System.out.println("二维码文本内容:"+result.getText());
        } catch (NotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
}

Sie können das spezifische JAR-Paket selbst herunterladen

Link: Passwort: kcjx
解析结果:www.baidu.com
二维码格式类型:QR_CODE
二维码文本内容:www.baidu.com

Das obige ist der detaillierte Inhalt vonVerwenden Sie Java, um QR-Code-Code-Sharing zu generieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn