1

ファイルをバイトに開き、文字列に変換し、一部のデータを変更し (ステガノグラフィーと考えてください)、ファイルをバイトに戻して jpeg として保存しようとしています。これまでのところ、私が試したことはすべて、ファイルを文字列に変換する際に破損しています。私はそれを64ビット文字列に変換しようとしましたが、もちろん、データを変更するのは少し難しいです:P

ファイルを破損することなく、これを適切に行う方法について何か提案はありますか?

4

1 に答える 1

3

これは C# ではなく PHP ではありますが、C# を見て適応することができます。

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

これは私のサイトで、JPEG の EXIF データを変更し、サムネイルに実際の画像ではない何かを表示する「魔法の画像」を作成するツールがあります。

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をさらに小さくすることは素晴らしいことです(場合によってははるかに小さくなります)。

于 2009-09-11T15:40:30.183 に答える