2

ビットマップヘッダーに追加情報を格納する領域があるようです。では、C#で画像を書き込む場合、ヘッダーにASCII情報を追加することはできますか?

public void writeToPath(GMapControl form)
{
    if(path == String.Empty || path == null)
        path=Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

    int width = form.Size.Width;
    int height = form.Size.Height;

    Bitmap bm = new Bitmap(width, height);
    form.DrawToBitmap(bm, new Rectangle(0, 0, width, height));

    bm.Save("C:\SomePath\blah");

}

ここに画像の説明を入力してください

4

2 に答える 2

0

ビジネスを掘り下げずにこれを行う最も簡単な方法はBITMAPINFOHEADER、ファイルをもう一度開いて、必要な特定のバイトを編集することだと思います。

ここにいくつかの(テストされていない)コードがあります:

using (var stream = File.Open(@"C:\SomePath\blah.jpg", FileMode.Open))
{
    var myBytes = new byte[] { /* put up to 4 bytes here */ };

    stream.Position = 6; //there is some space at 0x006 and 0x0008 for your data
    stream.Write(myBytes, 0, myBytes.Length);
}
于 2013-03-21T19:40:01.243 に答える