2012-03-31 14 views
3

欲しいものかどうかわからないけど、基本的にははNSImageを白く塗りつぶしているか、その不透明度を下げているのですか? ...(Finderの "非アクティブ"アイコンの一種ですか?何かのように)NSImage + Transparency?

これを達成する最も簡単な方法は何ですか?

私はここ(NSImage transparency)に示した例を試してみたが、それはどんな違いがあれば、それは間違いなく、

は(ところで、NSImageでははImageAndTextCellになります...私のために動作しませんでした。 ..)

+0

あなたはアルファで合成したことがありますか? –

答えて

6

あなたがする必要があるのは、1.0未満のアルファで画像を描くことだけです。 ImageAndTextCellの実装では、単に-drawWithFrame:inView:方法ではこのようなものを使用します。

[image drawInRect:someRect 
     fromRect:NSZeroRect 
     operation:NSCompositeSourceOver //this draws the image using the alpha mask 
     fraction:0.5]; 
+0

ありがとう!それは働いている... :-) –

+0

良い。 NSCompositingOperationSourceOverが廃止されたNSCompositeSourceOverの代わりに使用されるようになりました。 – wcochran