From 91487b85af4f35752680d2dc615e7ed1a02978d6 Mon Sep 17 00:00:00 2001 From: Manuel Kamper Date: Sat, 20 Apr 2019 15:51:50 +0200 Subject: [PATCH] refactored --- Mk0.Tools.Convert/Byte.cs | 12 +++++++----- Mk0.Tools.Convert/Image.cs | 27 +++++++++++++++++++++++++-- 2 files changed, 32 insertions(+), 7 deletions(-) diff --git a/Mk0.Tools.Convert/Byte.cs b/Mk0.Tools.Convert/Byte.cs index 8a9a7ba..98be503 100644 --- a/Mk0.Tools.Convert/Byte.cs +++ b/Mk0.Tools.Convert/Byte.cs @@ -1,14 +1,16 @@ -using System.IO; +using System.Drawing; +using System.IO; namespace Mk0.Tools.Convert { public static class ByteConvert { - public static System.Drawing.Image ToImage(this byte[] byteArrayIn) + public static Image ToImage(this byte[] byteArray) { - MemoryStream ms = new MemoryStream(byteArrayIn); - System.Drawing.Image returnImage = System.Drawing.Image.FromStream(ms); - return returnImage; + using (MemoryStream ms = new MemoryStream(byteArray)) + { + return Image.FromStream(ms); + } } } } diff --git a/Mk0.Tools.Convert/Image.cs b/Mk0.Tools.Convert/Image.cs index d895faa..a5abdd9 100644 --- a/Mk0.Tools.Convert/Image.cs +++ b/Mk0.Tools.Convert/Image.cs @@ -1,14 +1,37 @@ using System.IO; +using System.Drawing; +using System.Drawing.Imaging; namespace Mk0.Tools.Convert { public static class ImageConvert { - public static byte[] ToByte(this System.Drawing.Image imageIn) + public static byte[] ToByte(this Image image) { MemoryStream ms = new MemoryStream(); - imageIn.Save(ms, System.Drawing.Imaging.ImageFormat.Gif); + image.Save(ms, ImageFormat.Gif); return ms.ToArray(); } + + public static byte[] ToByte(this Image image, string extension) + { + using (var ms = new MemoryStream()) + { + switch (extension) + { + case ".jpeg": + case ".jpg": + image.Save(ms, ImageFormat.Jpeg); + break; + case ".png": + image.Save(ms, ImageFormat.Png); + break; + case ".gif": + image.Save(ms, ImageFormat.Gif); + break; + } + return ms.ToArray(); + } + } } }