2012-02-14 18 views
7

透明な四角形の中央に青色の四角形を表す32ビットPNGがあります。 以下は、私は3種類の不透明度の値を持つこの青い四角を表示:透明度が不透明度が1未満の場合は透明にならない

左から右へ

From left to right, opacity is 1, 0.5 and 0.1

、不透明度は1、0.5および0.1であり、あなたは、単に信用できない場合は、(見ることができるようにあなたのPhotoshopのスポイト)、青色の四角形の周りの領域は、左の画像でのみ透明です。

Same image with color values

私はそれがほとんど見えないことを知っているが、私はこれを引き起こすもの知りたい:

は、ここでカラー値と同じ画像です。 いくつかの画像と背景に加えて、コントラストがより目立ちます。

ありがとうございます!

EDIT:ここは自宅でそれを試してみたい人のための私のVSのソリューションです:http://www.mediafire.com/?gt704e62d53z7ae

+0

私はこの動作も確認できます。 32ビットと8ビットの両方のPNG画像でテストしましたが、出力に違いはありません。レンダリングの欠陥のような匂いがする。 – Sander

+0

それも私の推測です。あなたは回避策を考え出しましたか? – Rodolphe

+0

いいえ、回避策が見つかりませんでした。 – Sander

答えて

0

それは透明「フレーム」と半透明の「青い正方形の間にブレンドを引き起こしアンチエイリアシングすることができあなたが見ている奇妙な中間色のゴーストを引き起こします。

+0

私は、事前に乗算されたアルファブレンディングについてのドラゴスの答えが正しいと思います。とにかくありがとう。 – Rodolphe

1

アンチエイリアシングではなく、あなたがしていることを行うことが、ほとんどの場合Premultiplied Alpha Blendingではありません。

レンダリングの問題のようです。

いくつかのブラウザでこれを試しましたか?異なるGPUを持つ別のマシンでは?更新されたドライバを搭載した同じマシンでは?

+0

Chrome 17、Firefox 10、IE 9と同じ効果があります...そして、4つの異なるコンピュータでブラウザとブラウザ外で試しましたが、すべてWindows 7を実行していました...しかし、 GPU、またはドライバが最新のものかどうかを確認します。もしあなたが試してみたいのなら、ここにソースがあります:http://www.mediafire.com/?gt704e62d53z7ae – Rodolphe

+0

残念ながら、私の雇用主のwebsenseポリシーはナチですので、私はソースを取得することはできません。すべてのブラウザで発生するという事実から、私はWindows 7 GPUドライバが奇妙なものだと思っています。 –

+0

これはあまりにも悪いです。他のWindows版は手に入りません...とにかく、私は恩恵をあなたに授与します。 ; o) – Rodolphe

関連する問題