1

インターネットをチェックして、ZXingを使用して2次元コードを解決しているのを確認します。しかし、私が理解していないコード。

PlanarYUVLuminanceSource source = new PlanarYUVLuminanceSource( data, width, height, dstLeft, dstTop, dstWidth,dstHeight, false);

パラメータの意味は何ですか?

4

1 に答える 1

1

ZXingのソースコードを読みに行ったところ、次のことがわかりました(最後にブール値パラメーターを持つコンストラクターはありませんでした)

PlanarYUVLuminanceSource(byte[] yuvData, int dataWidth, int dataHeight, int left, 
   int top, int width, int height) 
{
   super(width, height);

   if (left + width > dataWidth || top + height > dataHeight) 
   {
      throw new IllegalArgumentException("Crop rectangle does not fit within image data.");
   }

   this.yuvData = yuvData;
   this.dataWidth = dataWidth;
   this.dataHeight = dataHeight;
   this.left = left;
   this.top = top;
}

コードを読むと、次のことがわかります(関連データは、画像内でQRコードを配置する必要がある内側の長方形の領域としてのみ考慮されると想定しています)。
byte[] yuvData - 画像のデータを含むバイト配列。長方形の内側と外側のすべてのデータ。
int dataWidth - データの幅。長方形の外側と内側のすべての領域のデータの幅。
int dataHeight - データの高さ。長方形の外側と内側のすべての領域のデータの高さ。
int left - 四角形の左の境界線。または、左から四角形の外側にあるピクセルの数。
整数トップ- 長方形の上枠。または、上から四角形の外側にあるピクセルの数。
int width - 内側の長方形の幅。
int height - 内側の四角形の高さ。

于 2012-11-19T10:14:52.620 に答える