aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java')
-rw-r--r--pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java
new file mode 100644
index 00000000..4f7dd632
--- /dev/null
+++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/QRCodeGenerator.java
@@ -0,0 +1,28 @@
+package at.gv.egiz.pdfas.web.helper;
+
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.Hashtable;
+
+import com.google.zxing.BarcodeFormat;
+import com.google.zxing.EncodeHintType;
+import com.google.zxing.WriterException;
+import com.google.zxing.client.j2se.MatrixToImageWriter;
+import com.google.zxing.common.BitMatrix;
+import com.google.zxing.qrcode.QRCodeWriter;
+import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
+
+public class QRCodeGenerator {
+
+ public static void generateQRCode(String content, OutputStream out, int size)
+ throws WriterException, IOException {
+ Hashtable hintMap = new Hashtable();
+ hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
+ QRCodeWriter qrCodeWriter = new QRCodeWriter();
+ BitMatrix byteMatrix = qrCodeWriter.encode(content,
+ BarcodeFormat.QR_CODE, size, size, hintMap);
+
+ MatrixToImageWriter.writeToStream(byteMatrix, "PNG", out);
+ }
+
+}