0

画像を左から右のスタイルで「ミラーリング」しようとすると、次のようにピクセルを交換できます。

for i:= 0 to width / 2
  for j:= 0 to height
    swap pixel[i][j] with pixel[width-i][j]

しかし、なぜ各 8 ビット ピクセル (C では char として格納される) に対してビット単位で処理する必要があるのでしょうか?

4

1 に答える 1

1

ピクセルが実際にはピクセルではなく、画面内の複数の可視ポイントを表していると仮定すると、画像が完全に反転するようにビットを左から右に読み取りたいため、ビットを反転する必要があります。そうしないと、小さな構造がそれぞれ「右から左」に表示され、図全体が「左から右」に表示され、完全な反転ではない結果になります。

于 2012-07-27T17:19:43.223 に答える