以下のコードが Qt の QImage を変更する理由を理解しようとしています。(まだ) 何かをするためのものではなく、テスト用です。アルファ付きの画像でコードを実行すると、アルファ チャネルが失われ、黒い背景に置き換えられます。
QImage image;
image.load("image.png");
for (int y = 0; y < image.height(); y++) {
for (int x = 0; x < image.height(); x++) {
QColor c = QColor::fromRgba(image.pixel(x, y));
c.setHsv(c.hue(), c.saturation(), c.value());
image.setPixel(x, y, c.rgba());
}
}
行をコメントアウトした結果は次のimage.setPixel(...)
とおりです。
そして、これが次のimage.setPixel(...)
行の結果です。
私のコードは画像を変更しないと思います。なぜこれをやっているのですか?