2012-06-17 54 views
0

我有一些.bmp文件有一些顏色(可能是黑色),當圖形顯示在窗體的頂部時應該顯示爲透明,所以窗體顏色來自透明區域。但默認情況下,當我將這些圖像放在圖像視圖中時,黑色/透明區域顯示爲黑色!如何在MacIOS的NSImageView中顯示.bmp,以便某種顏色是透明的?

我想我需要: - 改變NSImageView如何顯示圖像,使某種顏色是透明的,或者 - 修改.bmp文件以某種方式作出這樣的顏色適合在NSImageView透明度

但我對圖形文件,透明度(alpha),NSImageView以及圖像編輯工具不夠了解。我正在嘗試使用Gimp,但是......不知道我在做什麼。似乎已經有一種顏色在當前的.bmp文件中應該是透明的。我確定它設置NSImageView,編輯我的文件,或者爲圖像製作一個蒙版,但我還不知道如何。我已經在IB中查看了NSImageView的各種過濾器,但沒有找到在哪裏設置透明顏色,也沒有從圖像文件中獲取該顏色以確​​保使用正確的值。

在此先感謝您的幫助。 (我想張貼一些圖片,但因爲我是新的,我不能。)

回答

0

我不是一個可可開發者,但在GIMP嘗試添加一個Alpha通道圖像(一或許)然後保存爲32位PNG圖像(帶有alpha通道),然後將該PNG直接加載到NSImageView中。如果您想讓GIMP中的黑色像素透明,請使用魔術棒工具選擇它們(使用容差爲0的魔術棒),只需刪除選擇內容並直接保存爲PNG。

+0

我正在尋找類似的東西,但看着GIMP中的圖像,它似乎有某種背景,因爲它顯示爲棋盤格。如果情況並非如此,我認爲你的回答可能是正確的。 –

+0

棋盤圖案意味着該區域是透明的。如果更改縮放比例,即使每個像素的屏幕尺寸發生變化,您仍會看到棋盤格大小保持不變(這就是爲什麼在縮放比例級別下每個棋盤格的大小與每個像素)。 – Dai

+0

我用Gimp打開.bmp文件,並另存爲.png文件。然後,我將該文件添加到Xcode中,並使用.png代替NSImageView上的.bmp,並且透明度正常工作(通過背景色中的.png區域顯示錶單)。 解決了我的問題。但我想知道在.bmp和.png文件的NSImageView處理方面的區別是什麼 –

相關問題