[英]c# uwp winrt Image or Bitmap Image to base64
BitmapImage bitmap = new BitmapImage(new Uri(“ms-appx:///Assets/Video.png”));
我试图将位图图像转换为base64到通用app上的字符串。有任何想法它是怎么回事?
您必须将图像转换为字节。 然后你可以调用Convert.ToBase64String。
这有几个很好的信息来源:
总结一下, 要将Image转换为base64 ,您应该能够使用以下方法:
var bitmap = new RenderTargetBitmap();
await bitmap.RenderAsync(ImageControl);
var image = (await bitmap.GetPixelsAsync()).ToArray();
var width = (uint) bitmap.PixelWidth;
var height = (uint)bitmap.PixelHeight;
double dpiX = 96;
double dpiY = 96;
var encoded = new InMemoryRandomAccessStream();
var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, encoded);
encoder.SetPixelData(BitmapPixelFormat.Bgra8, BitmapAlphaMode.Straight, width, height, dpiX, dpiY, image);
await encoder.FlushAsync();
encoded.Seek(0);
var bytes = new byte[encoded.Size];
await encoded.AsStream().ReadAsync(bytes, 0, bytes.Length);
var base64String = Convert.ToBase64String(bytes);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.