3

この質問は、API ドキュメント リンクhttp://www.blackberry.com/developers/docs/7.0.0api/net/rim/device/api/barcodelib/BarcodeBitmap.htmlに関するものです。

彼らは、古い方法が

public static Bitmap createBitmap(ByteMatrix byteMatrix,
                                  int maxBitmapSizeInPixels) 

廃止されました。

しかし、新しい方法を使用することで、

public static Bitmap createBitmap(ByteMatrix byteMatrix)

Multiformatwriter で QR コードのエラー訂正レベルを指定する方法を指定していません。さまざまなメンバー関数を調べても、方法を見つけることができませんでした。誰もこれを試しましたか?

ご協力いただきありがとうございます。

4

3 に答える 3

4

これが私のコードです。携帯電話で確認したところ、携帯電話に応じてエラー修正レベルが正しく設定されています。

        Hashtable hints = new Hashtable();
        switch (comboBox1.Text)
        {
            case "L":
                hints.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
                break;
            case "Q":
                hints.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.Q);
                break;
            case "H":
                hints.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);
                break;
            default: 
                hints.Add(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
                break;
        }
        MultiFormatWriter mw = new MultiFormatWriter();
        ByteMatrix bm = mw.encode(data, BarcodeFormat.QR_CODE, size, size, hints);
        Bitmap img = bm.ToBitmap();
        pictureBox1.Image = img;
于 2012-08-15T11:46:59.210 に答える
1

エンコード時にヒントを渡すことができます

Map<EncodeHintType, Object> hints = new Hastable<EncodeHintType, Object>();

エラー訂正設定をヒントに追加します(たとえば、レベル M に)

hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);

ZXing はデフォルトでエラー訂正レベル L を使用します (最低、つまり、最大 7% の損傷の後でも QR コードを読み取ることができます)。

于 2015-04-03T18:01:17.230 に答える
1

ドキュメントを見ただけです。

createBitmap(ByteMatrix byteMatrix)と組み合わせて使用​​すると書かれていMultiFormatWriterます。encode(String contents, BarcodeFormat format, int width, int height, Hashtable hints)幅、高さ、エラーレベルを指定できる方法があります。

EncodeHintType.ERROR_CORRECTIONエラーレベルを指定するには、ハッシュテーブルのキーを値でヒントに入れますnew Integer(level)

残念ながら、ここで説明されているように、これらの値の定数は見つかりませんでした。しかし、おそらく axing のソースで見つけることができます。

于 2012-07-18T16:21:59.200 に答える