public Image <Rgba32> ConvertToFormat(byte[] imageContent, IImagingDevice.ImageFormat imageFormat) { using (var image = Image.Load <Rgba32>(imageContent)) { return(ConvertToFormat(image, imageFormat)); } }
/// <inheritdoc cref="SaveImage(byte[], IImagingDevice.ImageFormat, string)"/> public void SaveImage(Image image, IImagingDevice.ImageFormat imageFormat, string filePath) { var encoder = _imageHandler.GetImageEncoder(imageFormat); _imageHandler.ApplyEncoderDefaults(encoder); SaveImage(image, encoder, filePath); }
public Image <Rgba32> ConvertToFormat(Image <Rgba32> image, IImagingDevice.ImageFormat imageFormat) { using (var stream = new System.IO.MemoryStream()) { var encoder = GetImageEncoder(imageFormat); ApplyEncoderDefaults(encoder); image.Save(stream, encoder); stream.Seek(0, System.IO.SeekOrigin.Begin); return(Image.Load <Rgba32>(stream)); } }
public void SaveImage(byte[] imageContent, IImagingDevice.ImageFormat imageFormat, string filePath) => SaveImage(_imageHandler.LoadImage(imageContent), imageFormat, filePath);
public IImageEncoder GetImageEncoder(IImagingDevice.ImageFormat imageFormat) => imageFormat switch {
/// <summary> /// Convert to a <see cref="DNTScanner.Core.WiaImageFormat"/> instance. /// </summary> /// <param name="value"></param> /// <returns>A <see cref="DNTScanner.Core.WiaImageFormat"/> instance</returns> public static DNTScanner.Core.WiaImageFormat ToWIAImageFormat(this IImagingDevice.ImageFormat value) => (DNTScanner.Core.WiaImageFormat) typeof(DNTScanner.Core.WiaImageFormat) .GetProperty(value.ToString(), System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.IgnoreCase) .GetValue(null);
/// <summary> /// Convert a file extension string to an <see cref="ScanningDevice.ImageFormat"/> <see cref="Enum"/>. /// </summary> /// <param name="value">An <see cref="ScanningDevice.ImageFormat"/> instance</param> /// <param name="imageFormatStr">A file extension <see cref="string"/></param> /// <returns>An <see cref="ScanningDevice.ImageFormat"/> <see cref="Enum"/></returns> public static IImagingDevice.ImageFormat FromString(this IImagingDevice.ImageFormat _, string imageFormatStr) => Enum.TryParse(imageFormatStr, ignoreCase: true, out IImagingDevice.ImageFormat value) ? value : throw new ArgumentException($"{imageFormatStr} is not a supported image file extension.");