public override bool Save(Stream stream, PureImage image) { WindowsFormsImage ret = image as WindowsFormsImage; bool ok = true; if (ret.Img != null) { // try png try { ret.Img.Save(stream, System.Drawing.Imaging.ImageFormat.Png); } catch { // try jpeg try { stream.Seek(0, SeekOrigin.Begin); ret.Img.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg); } catch { ok = false; } } } else { ok = false; } return(ok); }
public override PureImage FromStream(Stream stream) { WindowsFormsImage ret = null; try { Image m = Image.FromStream(stream, true, Win7OrLater ? false : true); if (m != null) { ret = new WindowsFormsImage(); ret.Img = ColorMatrix != null?ApplyColorMatrix(m, ColorMatrix) : m; } } catch (Exception ex) { ret = null; Debug.WriteLine("FromStream: " + ex.ToString()); } return(ret); }