2016-05-07 2 views
0

RGB332 LCDと貧弱なMCUをドライブしました。 MCUにはハードウェアアクセラレータはなく、RGB332ディスプレイはアルファパスをサポートしていません。アルファパスなしペーストアイコン中にエッジエフェクトを減らす方法

アイコンの貼り付け作業には「アルファ色」の色を使用しました。データが黒でないうちにアイコンの色データを背景バッファに塗りつぶすことを意味します。

私が遭遇する問題は、背景が黒ではなく、アイコンが自分のアンチエイリアスされたエッジであることを示していたことです。そして、 "アンチエイリアシングされたエッジ"はバックグラウンドからのエッジ効果を作り出します。

状況に対処する方法はありますか?

答えて

0

主な問題は、PSのようなマージ作業を行うための "レイヤ"と "アルファ"がないことです。

しかしアイコンは1つずつフレームバッファに貼り付けられます。

だから私のソリューションです:

  1. 各アイコンが貼り付けられているとき、私はフロント/バックグラウンドを決めることができ、 私はちょうど Iのようなアイコンの「アンチエイリアスエッジ」を検出することができたことを意味します「レイヤー」を持つ。
  2. アンチエイリアシングされたエッジが見つかったら、フロント/バックグラウンドの中間色のピクセル で塗りつぶしました。
  3. LCDはRGB332で、中間色の計算では、背景色75%+正面色25%のエッジを に塗りつぶすだけです。アイコン の色が慎重に設計されている場合は、浮動小数点計算 は必要ありません。

仕事多分それは効果的ではないが、実際には私の問題を解決しました。

関連する問題