图像与字节数组之间的转换
问题: 如何将图像转换为字节数组,以及如何将字节数组转换回图像?
解答:
将图像转换为字节数组,可以使用以下示例代码:
<code class="language-csharp">public byte[] ImageToByteArray(System.Drawing.Image imageIn) { using (var ms = new MemoryStream()) { imageIn.Save(ms, imageIn.RawFormat); return ms.ToArray(); } }</code>
这段代码使用 MemoryStream
存储图像,然后将其转换为字节数组。
要将字节数组转换回图像,也可以使用一个类,如下所示:
<code class="language-csharp">public class ImageConverter { public ImageConverter() { } public Image ByteToImage(byte[] byteArrayIn) { using (var ms = new MemoryStream(byteArrayIn)) { Image returnImage = Image.FromStream(ms); return returnImage; } } public byte[] ImageToByte(Image imageIn) { using (var ms = new MemoryStream()) { imageIn.Save(ms, ImageFormat.Png); // 指定保存格式为PNG return ms.ToArray(); } } }</code>
此代码提供了一个更结构化的方式来执行图像和字节数组之间的转换,并明确指定了图像保存的格式为PNG。 您可以根据需要修改 ImageFormat
来选择其他格式,例如 JPEG 或 GIF。
以上是如何将图像转换为字节数组并返回?的详细内容。更多信息请关注PHP中文网其他相关文章!