有没有办法在.Net(C#)中使用这种格式? 我想使用uTorrent在我的应用程序中使用的相同皮肤格式,但我无法获得透明背景。 有任何想法吗? 谢谢你的时间。
答案 0 :(得分:3)
你需要做两件事:
代码有点笨拙,但这是一个非常好的示例应用程序,包含源代码:Per Pixel Alpha Blend in C#
答案 1 :(得分:2)
PixelFormat枚举列出了您可以在.Net中创建的“位图”格式,因此您需要PixelFormat.Format32bppArgb:
http://msdn.microsoft.com/en-us/library/system.drawing.imaging.pixelformat.aspx
http://msdn.microsoft.com/en-us/library/3z132tat.aspx
但是我不完全确定BMP文件格式支持透明度 - 所以你必须将文件保存为PNG文件。
答案 2 :(得分:2)
虽然BMP格式支持alpha通道,但Windows会忽略它。幸运的是,格式相当简单,您可以使用System.IO.BinaryReader读取它,然后使用LockBits和UnlockBits方法创建一个Drawing.Bitmap,将数据写入其中。