Изменение заголовков JPEG в C # - PullRequest
1 голос
/ 11 сентября 2009

Я пытаюсь открыть файл в байтах, преобразовать его в строку, изменить некоторые данные (например, Steganography) и преобразовать файл обратно в байты и сохранить его в формате JPEG. Пока что все, что я пробовал, повредило файл при преобразовании его в строку. Я попытался преобразовать его в 64-битную строку, но, конечно, немного сложно изменить данные в: P

Любые предложения о том, как я могу сделать это правильно, не повреждая мой файл?

1 Ответ

3 голосов
/ 11 сентября 2009

У меня нет этого в C #, но в PHP, но вы можете взглянуть и адаптироваться к C #.

http://www.havenard.110mb.com/fotomagica/

Это мой сайт, на котором есть инструмент для изменения данных EXIF ​​JPEG и создания "волшебных картинок", которые отображают на миниатюре что-то, что не является реальным изображением.

Он открывает JPEG, разрезает его сектора и строит его обратно, игнорируя нерелевантные сектора и помещая мой пользовательский заголовок EXIF.

И это источник классов PHP: http://www.havenard.110mb.com/fotomagica/class.JpegMapper.php.txt (ExifMapper не завершен) http://www.havenard.110mb.com/fotomagica/class.DataMapper.php.txt

Вы можете изучить его и перестроить в C #, очень просто нарезать JPEG, как вы увидите.

Использование этого класса PHP (только JpegMapper):


$jpg = new JpegMapper('picture.jpg');
$jpg->save_filtered('filtere picture.jpg'); // save removing irrelevant sectors

Замечательно получить любой JPEG еще меньше (иногда намного меньше).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...