QRCode for Java – QRコードを生成するには
QRCode for Javaは、Kazuhiko Araseさんが公開されているQRコードを生成するためのライブラリです。
http://www.d-project.com/ からダウンロードすることができ、
ライセンスは、「MIT license」となっています。
まずは、指定した文字列をQRコードに変換して、JPEG形式で出力してみます。
package net.tk_factory.sample.qrcode; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import org.apache.log4j.Logger; import com.d_project.qrcode.ErrorCorrectLevel; import com.d_project.qrcode.QRCode; import net.tk_factory.sample.AbstractSample; /** * QRCode for Javaを使用したサンプルプログラムです。<br/> * <br/> * <b>内容</b> * <ol type="1"> * <li>QRコードを作成し、JPEG形式で出力します。</li> * </ol> * @author Takafumi Kondo (TK Factory) */ public class SampleCreateQRCode extends AbstractSample { /** クラス名 */ private static final String CLASS_NAME = SampleCreateQRCode.class.getSimpleName(); /** ロガー */ private static final Logger LOGGER = Logger.getLogger(SampleCreateQRCode.class.getName()); /** 出力ファイル名 */ private static final String OUT_FILE_NAME = SAMPLE_FILE_DIRECTORY + CLASS_NAME + "Out.jpeg"; /** * SampleCreateQRCodeオブジェクトを構築すると、 * UnsupportedOperationExceptionがスローされます。<br/> */ protected SampleCreateQRCode() { throw new UnsupportedOperationException(); } /** * mainメソッドです。<br/> * * @param args 引数 */ public static void main(String[] args) { LOGGER.info("[START]" + CLASS_NAME); try { //すでに出力ファイルが存在している場合は削除する deleteExistsFile(OUT_FILE_NAME); //QRコードを生成する QRCode qrcode = QRCode.getMinimumQRCode( //QRコードに変換する文字列 "http://tk-factory.net/", //誤り訂正レベル(30%が復元可能) ErrorCorrectLevel.H); qrcode.make(); //QRコードをJPEG形式で出力する BufferedImage image = qrcode.createImage(2, 0); ImageIO.write(image, "jpeg", new File(OUT_FILE_NAME)); } catch (IOException ioex) { LOGGER.error(getStackTrace(ioex)); } finally { LOGGER.info("[E N D]" + CLASS_NAME); } } }
出力されたファイルは、以下のような感じになります。
QRコードの規格では、バージョン(型番)が1~40まで定義されていますが、
QRCode for Javaでは、バージョン(型番)が1~10までしか対応していないようです。
(参考)
QRコードドットコム
関連記事
コメント 0