san*_*ngh 12
将图像转换为字节的最简单方法是使用System.Drawing命名空间下的ImageConverter类
public static byte[] ImageToByte(Image img)
{
ImageConverter converter = new ImageConverter();
return (byte[])converter.ConvertTo(img, typeof(byte[]));
}
Run Code Online (Sandbox Code Playgroud)
如果您的图片已经是a的形式System.Drawing.Image,那么您可以执行以下操作:
public byte[] convertImageToByteArray(System.Drawing.Image image)
{
using (MemoryStream ms = new MemoryStream())
{
image.Save(ms, System.Drawing.Imaging.ImageFormat.Gif);
// or whatever output format you like
return ms.ToArray();
}
}
Run Code Online (Sandbox Code Playgroud)
您可以将此功能与图片框控件中的图像一起使用,如下所示:
byte[] imageBytes = convertImageToByteArray(pictureBox1.Image);
Run Code Online (Sandbox Code Playgroud)
我假设你想要的是像素值.假设bitmap是System.Windows.Media.Imaging.BitmapSource:
int stride = bitmap.PixelWidth * ((bitmap.Format.BitsPerPixel + 7) / 8);
byte[] bmpPixels = new byte[bitmap.PixelHeight * stride];
bitmap.CopyPixels(bmpPixels, stride, 0);
Run Code Online (Sandbox Code Playgroud)
注意,'stride'是每行像素ddata所需的字节数.这里有更多解释.
| 归档时间: |
|
| 查看次数: |
17522 次 |
| 最近记录: |