Я пытаюсь прочитать данные пикселей из файла изображения как byte[]
для хранения в памяти. (Массив байтов будет позже передан объекту растрового изображения, но я хочу, чтобы данные были в памяти, чтобы не было задержек ввода / вывода.)
Вот что я сейчас делаю:
private byte[] GetImageBytes(Uri imageUri) {
//arraySize and stride previously defined
var pixelArray = new byte[arraySize];
new BitmapImage(imageUri).CopyPixels(pixelArray , stride, 0);
return pixelArray ;
}
Мне интересно, знает ли кто-нибудь способ получения данных byte[]
, кроме создания BitmapImage
и последующего копирования всех байтов. То есть Есть ли класс .NET, который будет просто передавать данные пикселей из файла? (Первоначально я использовал File.ReadAllBytes
, но это вносило другие вещи, такие как метаданные изображения, и не получалось.)