2

ZXing 3.2 Java lib を使用しており、16 * 48 セル (高さ 16 セル、幅 48 セル) の長方形のデータ マトリックスを生成する必要があります。

これを行う方法が見つかりませんでした。誰もこれを行う方法を知っていますか?

スニペットの例:

Hashtable<EncodeHintType,Object> hints=null;
hints=new Hashtable<EncodeHintType,Object>(1);
hints.put(EncodeHintType.DATA_MATRIX_SHAPE,SymbolShapeHint.FORCE_RECTANGLE);

MultiFormatWriter writer = new MultiFormatWriter();
BitMatrix         result = writer.encode("50 digits",format,48,16,hints);

結果は、身長が 16 セル、体重が 35 セルのデータ マトリックスです。エンコード関数で幅を変更しても、結果には影響しません。高さは常に 16 セルに設定されます。

お時間をいただきありがとうございます

4

1 に答える 1

0

1 つの方法は、必要な長さになるまでデータにスペースを埋め込むことです (たとえば、70 文字で 16*48 の適切なパターンが得られます)。

ただし、使用可能なすべてのスペースがデータで満たされるため、エラー修正は最小限になります。

より良い方法は、強制することMIN_SIZEでありMAX_SIZE、これらはData Matrix に対して非推奨ではないためです

hints.put(EncodeHintType.MIN_SIZE, new Dimension(48, 16));
hints.put(EncodeHintType.MAX_SIZE, new Dimension(48, 16));
于 2016-06-30T13:44:04.100 に答える