0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

getImageData() の座標は変換行列で移動しない

0
Posted at

描画時に translate() を使っても、getImageData() は変換行列に影響されない。指定する矩形は描画バッファ上の位置として記録する。

例えば ctx.translate(20, 0) の後で ctx.getImageData(0, 0, 10, 10) を呼ぶと、読み取るのは描画バッファの左上にある矩形である。描画時の移動と、画素を読む位置を分けて記録すると比較しやすい。

CSS で表示している大きさを、そのまま読み取り座標として使わない。どの画素を調べたいかを描画バッファ上で確認し、同じ矩形を指定して結果を比べる。読み取り範囲は、変換後の図形とは別に確認する。

MDN の getImageData() に変換行列との関係が記載されている。検証メモには指定矩形と描画時の行列を残し、読んだ位置を再現できるようにする。

Morphio(https://morphio.online/)の開発に関わっています。この記事は画像処理の検証メモです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?