Что я пробовал?
IRandomAccessStream random = await RandomAccessStreamReference.CreateFromUri(new Uri("ms-appx:///Assets//img.jpg")).OpenReadAsync();
BitmapTransform bitmapTransform = new BitmapTransform();
bitmapTransform.ScaledHeight = 250;
bitmapTransform.ScaledWidth = 500;
BitmapDecoder decoder = await BitmapDecoder.CreateAsync(random);
PixelDataProvider pixelProvider = await decoder.GetPixelDataAsync(
BitmapPixelFormat.Bgra8,
BitmapAlphaMode.Ignore,
bitmapTransform,
ExifOrientationMode.IgnoreExifOrientation,
ColorManagementMode.DoNotColorManage
);
byte[] PixelData = pixelProvider.DetachPixelData();
CanvasBitmap cb = CanvasBitmap.CreateFromBytes(sender, PixelData, 500, 250, Windows.Graphics.DirectX.DirectXPixelFormat.B8G8R8X8UIntNormalized);
CanvasBitmap cb1 = null;
cb.CopyPixelsFromBitmap(cb1, 0,0,100,100,(int)cb.GetBounds(sender).Width,(int) cb.GetBounds(sender).Height);
Но метод copyPixelsFromBitmap () выдает такую ошибку ...
Я не знаю, как это решить. Может ли кто-нибудь мне помочь?
cb1
в значение null, тогда у него нет пикселей,CopyPixelsFromBitmap
должен сообщать об ошибках параметров. Вы хотите скопировать картинки? - person Richard Zhang - MSFT   schedule 13.05.2020