質問
Flash CS3 では、PNG 画像が「ぼやけて」表示されます。それらは非常にブロック状で、アンチエイリアスがかかっていないように見えます(それが言葉であれば)これを修正できる人はいますか?何か設定が足りないのでしょうか?
解決
ローダーを介してSWFにロードしていますか?または、ビットマップシンボルとしてライブラリにインポートされますか?それらが読み込まれている場合は、Bitmap.smoothing = trueを呼び出してみてください。または、ライブラリにある場合は、ビットマップのプロパティに移動し、[スムージングを許可]をクリックします。
それ以外は、アルファ設定が1を超えると狂気にならないこと、またはコードのスケールがいつでも乱れないことを確認します。これら2つのオプションは、ビットマップ画像のあいまいさを混乱させる傾向があります。
他のすべてが失敗した場合、おそらく画像をベクターベースのグラフィックスに変えたいと思うでしょう、そして、彼らは常にスケーリングに関係なくあなたが望むように正確に見えるでしょう。
他のヒント
ビットマップ画像は、まったくスケーリングすると「あいまい」になります。これがグラフィックの性質です。公開設定も確認してください。低品質設定でJPEGに変換されている可能性があります。
PNG 画像が「ギザギザ」として表示される場合 (または エイリアスされた それよりも アンチエイリアス済み) Flash では問題なく表示されますが、Photoshop では問題なく表示される場合は、おそらく A:サイズ変更、B:持っていません 'スムージング' がオンになります (スムージングは基本的に動的アンチエイリアシングです)。
ピクセルと画面の比率が 1:1 から画像のサイズを変更するたびに、レンダラーはどのピクセルを切り取るか (縮小の場合)、複製するか (拡大の場合) を計算する必要があります。
スムージングが行われていない場合、特にコントラストの高いエッジ領域に沿ってギザギザのアーティファクトが表示されます。
IDE でスムージングをオンにするには、ライブラリ内のビットマップをダブルクリックし、「スムージングを許可する」チェックボックス。
次のようにプログラムでオンにすることもできます。
myBitmap.smoothing = true;
それを行う最も簡単な方法は、画像を右クリックしてから「分割」します。
これと同じ問題が発生し、PNGを読み込んだ映画のアルファ値が100に設定されていました。AS3では0〜1の値であるため、これは正しくありませんでした。ムービーのアルファを1にすると、PNGは問題なくクリアされました。
ライブラリで、インポートしたビットマップを右クリックして、「プロパティ」を選択します。圧縮を写真(JPEG)からロスレス(PNG / GIF)に変更します。
同じ問題がありましたが、パブリケーションのプロパティで JPG Degroup を無効にすると、修正されます。
さて、image.opaqueBackground = 0x000000を使用してみました。うまく機能しているように見えますが、アンチエイリアシングははるかに優れていますが、これはプロセスの透明な背景という考えに打ち勝ちます。 アドビ、これについては本当に怒ります!