Dav*_*veS 44 .net c# alpha-transparency image-conversion
我在.Net中使用System.Drawing.Image进行从png到jpeg的简单转换.我基本上只使用这两行代码:
Image img = Image.FromFile(filename);
img.Save(newFilename, System.Drawing.Imaging.ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
它工作正常,除了png文件由于alpha通道包含透明度.在这种情况下,转换的jpeg具有黑色背景.有没有办法让背景变白?
Ry-*_*Ry- 78
// Assumes myImage is the PNG you are converting
using (var b = new Bitmap(myImage.Width, myImage.Height)) {
b.SetResolution(myImage.HorizontalResolution, myImage.VerticalResolution);
using (var g = Graphics.FromImage(b)) {
g.Clear(Color.White);
g.DrawImageUnscaled(myImage, 0, 0);
}
// Now save b as a JPEG like you normally would
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
36297 次 |
| 最近记录: |