こんにちは 私はRGBQuadArray
でこのrgbReserved
が何であるかを知りたいと私はRGBの色を変更する場合がありますなぜ、いくつかの醜い行が画像上に表示?それはrgbReserved
に関連していますか?rgbReservedとは何ですか?
4
A
答えて
11
メモリでは、ビットマップの行は、しばしば、BBGGRR00BBGGRR00BBGGRR00 ...の形式で格納され、各ピクセルが正確に4バイト、つまり32ビットを占めるようになります。これは多くの事を簡素化し、計算と画像操作を高速化することができます。しかし、ビットマップが赤、緑、青の輝度をバイト(0..255の範囲)で指定し、アルファチャンネルを含まない場合、各ピクセルは3バイトしか必要としません。したがって、未使用の4バイト目のピクセルがあります。そして、ピクセル構造では何かの名前を付ける必要があります。使用可能なメンバーがrgbRed
,rgbGreen
、rgbBlue
と呼ばれているとすれば、rgbReserved
はかなりOKと感じます。たぶんrgbUnused
がさらに適しているかもしれませんが、未使用のパラメータを "予約済み"という名前で(将来の使用のために予約されています)、Win32には伝統があります。実際、もしあなたがアルファチャンネルを含む透明なビットマップで動作するアプリケーションならば、各ピクセルはBBGGRRAAの形式かもしれないので、rgbReserved
をrgbAlpha
として使うことができます。
ご質問の後半部分はそのまま返答することはできません。なぜあなたのコードがうまくいかないのか分かりません。多分、ピクセルの輝度があふれているでしょうか?どこかに愚かなバグがあるかもしれませんか?
最後に、Win32構造体のメンバーが何であるか疑問に思うなら、いつでもthe official documentationに問い合わせることができます。
関連する問題
- 1. IPM.Noteとは何ですか?その用途は何ですか?
- 2. @privateとは何ですか?その用途は何ですか?
- 3. コピーオンライトとは何ですか?
- 4. @AttributeOverrideとは何ですか?
- 5. スケジューリングジッタとは何ですか?
- 6. プログレッシブエンハンスメントとは何ですか?
- 7. 「ベンチテストコード」とは何ですか?
- 8. タイプセーフティとは何ですか?
- 9. 「ラムダリフティング」とは何ですか?
- 10. Sqliteとは何ですか?
- 11. tiny_free_list_add_ptrとは何ですか?
- 12. sun.jnu.encodingとは何ですか?
- 13. シリアライゼーションプロキシパターンとは何ですか?
- 14. シングルトンタイプとは何ですか?
- 15. パーマスペースとは何ですか?
- 16. 「スタックアライメント」とは何ですか?
- 17. グループリーダーとは何ですか
- 18. チークプレスイベントとは何ですか?
- 19. オントロジーエクスポータとは何ですか?
- 20. UIGobblerGestureRecognizerとは何ですか?
- 21. `CString`とは何ですか?
- 22. PictureListenerとは何ですか?
- 23. データベースセッションとは何ですか?
- 24. Microsoft.Practices.EnterpriseLibrary.Dataとは何ですか
- 25. DTDとは何ですか?
- 26. RevertToSelf()とは何ですか? #
- 27. 「ボーイングアジャイルソフトウェアプロセス」とは何ですか?
- 28. タイプコードとは何ですか?
- 29. .NET:WPFとは何ですか?
- 30. 「isChromeWebToolbarDiv」とは何ですか?
+1詳しい解答です。 – casablanca