skiasharp png透明背景图片转换为jpg缩略图时背景变黑问题的解决办法

 

You can just draw the bitmap onto a new bitmap.
This will also handle the cases of partial transparency, and also not need thousands of p/invokes with the Get/SetPixel (this is very, very slow).

var original = SKBitmap.Decode(inputStream);

// create a new bitmap with the same dimensions
// also avoids the first copy if the color type is index8
var copy = new SKBitmap(original.Width, original.Height);

// we need a canvas to draw
var canvas = new SKCanvas(copy);

// clear the bitmap with the desired color for transparency
canvas.Clear(SKColors.White);

// draw the bitmap on top
canvas.DrawBitmap(original, 0, 0);

 

相关文章

SkiaSharp3.116.1部署到Linux不工作,提示libSkiaSharp.so找不到的解决办法

SkiaSharp在阿里云Windows server 2016上部署时提示The type initializer for 'SkiaSharp.SKAbstractManagedStream' threw an exception. 错误

posted @ 2022-01-22 15:07  jopny  阅读(713)  评论(0)    收藏  举报