我有一个从azure服务获取的位图文件作为字节数组。我知道位图是正确的,因为我可以将byte []转换为MemoryStream,然后转换为System.Drawing.Bitmap。我尝试过以两种不同的方式在SkiaSharp中获取位图,并且两次,.Decode()方法都返回null。
byte[] imageBytes = OrderFileService.Get(orderId);
using (var bitmap = SKBitmap.Decode(imageBytes))
{
var w = bitmap.Width;
var h = bitmap.Height;
}
using (var memoryStream = new MemoryStream(imageBytes))
using (var stream = new SKManagedStream(memoryStream))
using (var bitmap = SKBitmap.Decode(stream))
{
var w = bitmap.Width;
var h = bitmap.Height;
}
在两种情况下,SKBitmap.Decode()返回null。还有什么我需要做的吗?我认为我使用的图像具有索引像素格式。有关系吗该文件是从CorelDraw导出的位图。