1. ホーム
  2. c#

[解決済み】ビットマップをバイト配列に変換する

2022-04-04 17:39:53

質問

C#を使用して、Windowsのアプリケーションを変換する良い方法はありますか? Bitmap から byte[] 一時ファイルに保存して、その結果を読み込むよりも FileStream ?

解決方法は?

いくつかの方法があります。

ImageConverter

public static byte[] ImageToByte(Image img)
{
    ImageConverter converter = new ImageConverter();
    return (byte[])converter.ConvertTo(img, typeof(byte[]));
}

こちらはコードをあまり必要としないので便利です。

メモリストリーム

public static byte[] ImageToByte2(Image img)
{
    using (var stream = new MemoryStream())
    {
        img.Save(stream, System.Drawing.Imaging.ImageFormat.Png);
        return stream.ToArray();
    }
}

これは、ファイルがディスクではなくメモリに保存されることを除けば、あなたが行っていることと同じです。より多くのコードがありますが、ImageFormatのオプションがあり、メモリまたはディスクへの保存の間で簡単に変更することができます。

出典 http://www.vcskicks.com/image-to-byte.php