2011-10-20 59 views
1

我知道如何在C#中使圖像控件透明,但是有沒有辦法讓圖像(.jpeg文件,而不是圖像控件)透明? 或者,有沒有辦法,當我使圖像控件透明時,要創建新圖像,請將其保存在某個路徑中,並將其賦予其他圖像控件的內容?如何讓我的圖像透明?

回答

1

您可以設置圖像控件的不透明度屬性以透明地查看它。 但是爲了獲得具有透明度的圖像文件,您必須將其渲染爲新文件。

下面是一個例子,你可以做到這一點。

Image image = new Image(); //or however you get this 
image.Opacity = 0.5; 
RenderTargetBitmap bmp = new RenderTargetBitmap(image.Source.Width, image.Source.Height, 96, 96, PixelFormats.Pbgra32); 
bmp.Render(image); 

PngBitmapEncoder png = new PngBitmapEncoder(); 
png.Frames.Add(BitmapFrame.Create(bmp)); 
using (Stream fs= File.Create("test.png")) 
{ 
png.Save(fs); 
} 
4

JPEG文件不能是透明的。但是,如果將它保存爲PNG圖像,它將會有一個透明通道。

GIFS也支持透明度,但只有完全不透明或完全透明。兩者之間沒有什麼

PNG是你最好的選擇在這裏國際海事組織。

+0

好吧,你知道如何製作圖像,而不是圖像控制tranparent? –

+0

你在用什麼?的WinForms? WPF? –

+0

我正在使用WPF .. –

0

有屬性transparencycolor。如果您想要在控件上顯示圖像,那就是您所需要的。

+0

好吧,你知道如何製作圖像,而不是圖像控制tranparent? –