AccessViolationException при доступе к цвету пикселя с помощью WriteableBitmapEx
Я использую библиотеку WriteableBitmapEx, чтобы редактировать изображение, снятое на камеру планшета в Windows 8 Pro. Я получаю AccessViolationException каждый раз, когда я вызываю функцию GetPixel(), вот код:
Windows.Media.Capture.MediaCapture captureMgr = new MediaCapture();
await captureMgr.InitializeAsync();
IRandomAccessStream memoryStream = new InMemoryRandomAccessStream();
await captureMgr.CapturePhotoToStreamAsync(imageProperties, memoryStream);
await memoryStream.FlushAsync();
memoryStream.Seek(0);
WriteableBitmap tmpImage = new WriteableBitmap(1, 1);
tmpImage.SetSource(memoryStream);
tmpImage.GetPixel(1, 1); // An AccessViolationException occurs.
Что я делаю не так?
1 ответ
Решение
Попробуйте использовать встроенные методы для создания вашего WriteableBitmap
вместо.
WriteableBitmap tmpImage = await BitmapFactory.New(1, 1).FromStream(memoryStream);
tmpImage.GetPixel(1, 1);
Это должно гарантировать, что ваше изображение было загружено в WriteableBitmap перед доступом.