透過PNGにシャギー(ギザギザ)ができるバグを解決
ギャラリーを作成中、妙な現象に出くわしました。
ギャラリーは、写真の上にマウスを乗せるとボタンが出てくる仕組みになっています。で、そのボタンは透過PNGでできています。
このPNGボタンが、どういうわけかIE6でのみシャギーがかっているというか、丸いボタンのふちがギザギザになってしまいました。
もちろん幅と高さを指定していないというケアレスミスなどではありません。親階層が不透明度90%なのでなんらかのバグは出てくるかもと予想していたんですが、みごとにそのとおりになってしまいました。原因が不透明度の設定によるものかは確定できませんが、通常の状態では見たことがないので可能性は強いと思っています(Flashの上でもなる可能性があるようです)。
この解決方法は結構簡単に見つけることができました。
というのは、昔Flashで似たようなバグに遭遇したことがあったからです。最近Flashはご無沙汰なので今のバージョンのFlash Playerでもこのバグがあるのかわかりませんが、swfを書き出して再生するとビットマップ画像が1pxとか微妙にすれたりすることがありました。この場合、位置を変えたり大きさを変えたりすることで解消できたはずです。というわけで、スライスを若干大きく切り取ってみました。
。。。
うまくできました!
IE6の場合、幅や高さを指定しないときちんと描画されないということもあるし、どうやらちゃんと画像の大きさを認識できていないということが根本にあると思いますね。
Flashの経験がこんなところで役に立つとは思いませんでしたー。







コメント&トラックバック
トラックバックURL: http://www.ug-m.asia/2009/02/%e9%80%8f%e9%81%8epng%e3%81%ab%e3%82%b7%e3%83%a3%e3%82%ae%e3%83%bc%ef%bc%88%e3%82%ae%e3%82%b6%e3%82%ae%e3%82%b6%ef%bc%89%e3%81%8c%e3%81%a7%e3%81%8d%e3%82%8b%e3%83%90%e3%82%b0%e3%82%92%e8%a7%a3/trackback/