Итак, я как бы экспериментирую с манипуляциями с изображениями на уровне байтов (без оболочки 'Image' или библиотек), поэтому язык не имеет значения (я использую C #) так же, как байты.сами манипуляции.
Я сейчас пытаюсь перевернуть изображение .jpg (минус магическое число) по осям x и y, но после некоторых проб и ошибок осознал, что кодировка становитсяв пути.Вот код, который я использую для байта [] без FF D8 или FFD9 включает в себя:
//No magic number included
public class MirrorImgOverXAndYAxes : IFunction
{
//No magic number included
public byte[] Exec(byte[] jpgImage)
{
byte[] resultingImage = new byte[jpgImage.Length];
for (var i = jpgImage.Length - 1; i >= 0; i--)
{
var indexToInsert = jpgImage.Length - 1 - i;
resultingImage[indexToInsert] = jpgImage[i];
}
return resultingImage;
}
}
В настоящее время я предполагаю, что это не так просто, как это, и что я быпостроить полноценный декодер, чтобы иметь возможность манипулировать байтами изображения следующим образом.
Возможно ли создать это зеркальное отображение без декодера, и что-то вроде того, что я делаю, работает?