私は現在、ZXingを使用してQRコードを画像として生成するアプリに取り組んでいます。簡単な例を次に示します。
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import com.google.zxing.BarcodeFormat;
import com.google.zxing.MultiFormatWriter;
import com.google.zxing.WriterException;
import com.google.zxing.client.j2se.MatrixToImageWriter;
import com.google.zxing.common.BitMatrix;
public class MyQREncoder {
/**
* @param args
* @throws WriterException
* @throws IOException
* @throws FileNotFoundException
*/
public static void main(String[] args) throws WriterException, FileNotFoundException, IOException {
String text = "Some text to encode";
int width = 300;
int height = 300;
BitMatrix bitMatrix = new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE,width,height);
String file = "plop.png";
String format = "png";
MatrixToImageWriter.writeToStream(bitMatrix, format, new FileOutputStream(new File(file)));
}
}
これにより、「エンコードするテキスト」というフラッシュ可能なQRコードを含むPNGファイルが生成されます。
私の問題は、フォーマットをepsに変更しようとすると、空のファイルが表示されることです。現在使用しているソリューションは、imagemagick変換ユーティリティを使用してpngファイルをepsに変換することです。ただし、指定されたEPSは生の画像を埋め込んでいるだけであり、(特に印刷時に)適切に拡大縮小されません。
スケーラブルなEpsファイルを構築するためのオープンソースソリューション(Zxingまたはその他)があるかどうか誰かが知っていますか?(または、たとえば任意のベクトル形式)