1. Сгенерировать QR -код в проекте Java с использованием SwetakeQrCode
http://swetake.com/qr/ Скачать адрес
Или http://sourceforge.jp/projects/qrcode/downloads/28391/qrcode.zip Это написано японцем и генерирует квадратный код QR, который мы обычно используем.
Можно использовать на китайском языке
Например: 56777777GHJJJJJ
Друг спросил меня о коде, сгенерированном этим изображением. Я искал онлайн и разобрал класс. Во -первых, я должен разместить пакет QRCODE.JAR SwetakeQrCode qrcode.jar в пути компиляции проекта. Адрес загрузки этого пакета - официальный SwetakeQrCode, приведенный выше http://www.swetake.com/qrcode/java/qr_java.html. Ниже приведен тестовый класс
Import com.swetake.util.qrcode; импорт javax.imageio.imageio; импорт java.awt.*; импорт java.awt.image.bufferedimage; импорт java.io.file; импорт java.io.ioexception; импорт java.io.unsupportedendingExexception;/*** Создан с интеллектом. * Дата: 9/9/13 * Время: 11:31 AM */Public Class qrcodetest {private static int default_width; Частный статический int unit_width = 10; public static void main (String args []) бросает исключение {createImg (); } public static void createImg () {qrCode qrCode = new qRCode (); // Коррекция ошибок // 7% от уровня L может быть скорректирована // 15% от уровня М может быть скорректирована // 25% от QR -кода может быть скорректирована // 30% от уровня H может быть скорректирована // QR -код имеет допуск ошибки. Если графики QR -кода повреждены, их все равно может быть прочитано машиной и может составлять до 7% до 30% от поврежденной области. // Относительно говоря, чем выше скорость толерантности к ошибкам, тем больше область графики QR -кода. Следовательно, общий компромисс использует 15% терпимость разлома. qrcode.setqrcodeerrorcorct ('m');/ * l ',' m ',' q ',' h ' */ qrcode.setqrcodeencodemode (' b ');/ * "n", "a" или другой */ qrcode.setqrcodeversion (3);/ * 0-20 */ string testString = "567777777 Byte [] buff = null; try {buff = teststring.getbytes ("utf-8"); } catch (unsupportEncodingexception e) {e.printstacktrace (); } boolean [] [] brect = qrcode.calqrcode (buff); Default_width = brect.length * unit_width; BufferedImage bi = new BufferedImage (default_width, default_width, bufferedimage.type_int_rgb); // int Unitwidth = default_width/ brect.length; // creategraphics graphics2d g = bi.creategraphics (); // set g.setbackground (color.white); g.clearrect (0, 0, default_width, default_width); g.setcolor (color.black); if (buff.length> 0 && buff.length <123) {for (int i = 0; i <brect.length; i ++) {for (int j = 0; j <brect.length; j ++) {if (j] [i]) {g.fillRect (j*unit_width, i*unit_width, unit_width_width-1); }}}} g.dispose (); bi.flush (); String filePath = "qrcode.png"; Файл F = новый файл (filePath); try {imageio.write (bi, "png", f); } catch (ioException e) {e.printstackTrace (); } System.out.println ("Создать QRCode закончил!"); }}Позвольте мне объяснить код, я не буду говорить об остальных. В основном я расскажу о том, как заставить QRCode заполнить всю картинку. Сначала я определю UNIT_WIDTH = 10 или другие значения, а затем вычисляю, насколько большой должна быть картина. Затем изображение заполнит всю картинку. Однако, если он выглядит хорошо, мы можем управлять размером изображения, поэтому мы также можем определить default_width, которая является длиной и шириной изображения, а затем вычислить unit_width, поэтому размер изображения фиксирован. Тем не менее, подразделение, рассчитанное таким образом, может быть плохо разделено, поэтому картина не будет выглядеть очень приятно. Это не большие проблемы, просто настройте это. Размер brect.length определяется значением в qrcode.setqrcodeversion (3), а не по длине строки.
Следующий Zxing также может генерировать такой QRCode.
2. Используйте Barcode4j для генерации штрих -кода и QR -кода
Barcode4j URL: http://sourceforge.net/projects/barcode4j//
Barcode4J - это алгоритм генерации QR -кода с использованием DataMatrix, который поддерживает алгоритм QR.
DataMatrix является стандартом в Европе и Соединенных Штатах, а QR является стандартом в Японии.
Barcode4j обычно генерируется как прямоугольный.
Например: 887777Alec000yan
Эта статья написана очень четко, пожалуйста, обратитесь к ней
//www.vevb.com/article/90048.htm
3.zxing
ZXING Это из Google, адрес загрузить
http://code.google.com/p/zxing/downloads/list
Импорт java.io.file; import java.util.hashtable; import com.google.zxing.barcodeformat; import com.google.zxing.encodehinttype; импорт com.google.zxing.multiformattwriter; imporm.google.zxing.client.j2se.matrixTiumWriter; com.google.zxing.qrcode.qrcodewriter; public class qrcodeevents {public static void main (string [] args) бросает исключение {string text = "hello"; int width = 100; int height = 100; String format = "png"; Hashtable Hints = new Hashtable (); nts.put (encodehinttype.character_set, "utf-8"); Bitmatrix Bitmatrix = new MultiformatWriter (). Encode (Text, Barcodeformat.qr_code, ширина, высота, подсказки); File outputfile = new File ("new.png"); MatrixtoImageWriter.WritetOfile (Bitmatrix, Format, OutputFile); }}Выше приведено сборник информации инструмента для генерации QR -кодов в Java. Мы будем продолжать добавлять соответствующую информацию в будущем. Спасибо за поддержку этого сайта!