←Select platform

ConvertFromSource Method

Summary
Converts a WPF System.Windows.Media.ImageSource object to LEADTOOLS Leadtools.RasterImage.
Syntax
C#
C++/CLI
public static RasterImage ConvertFromSource( 
   ImageSource image, 
   ConvertFromSourceOptions options 
) 
public: 
static RasterImage^ ConvertFromSource(  
   ImageSource^ image, 
   ConvertFromSourceOptions options 
)  

Parameters

image
The System.Windows.Media.ImageSource object containing the image data to convert.

options
Options to control the conversion operation. Currently there are no extra options and the value of this parameter must be set to ConvertFromSourceOptions.None

Return Value

A Leadtools.RasterImage object representing the converted image.

Remarks

LEADTOOLS and WPF support different pixel formats. These pixel formats may not be identical in some cases. The conversion process takes care of converting scanlines to a suitable format that best matches the source data. The following table shows the result bits/pixel byte order achieved when passing images with different pixel format values:

Source PixelFormat Result Bits/Pixel and byte order
System.Windows.Media.PixelFormats.Bgr101010 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr24 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr32 32 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr555 16 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr565 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.BlackWhite 1 bits/pixel and RasterByteOrder.Rgb with a black on white palette
System.Windows.Media.PixelFormats.Cmyk32 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Gray16 16 bits/pixel and RasterByteOrder.Gray
System.Windows.Media.PixelFormats.Gray2 2 bits/pixel and RasterByteOrder.Rgb with a palette containing 2 shades of gray
System.Windows.Media.PixelFormats.Gray32Float 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Gray4 4 bits/pixel and RasterByteOrder.Rgb with a palette containing 16 shades of gray
System.Windows.Media.PixelFormats.Gray8 8 bits/pixel and RasterByteOrder.Rgb with a palette containing 256 shades of gray
System.Windows.Media.PixelFormats.Indexed1 1 bits/pixel and RasterByteOrder.Rgb with corresponding palette
System.Windows.Media.PixelFormats.Indexed2 2 bits/pixel and RasterByteOrder.Rgb with corresponding palette
System.Windows.Media.PixelFormats.Indexed4 4 bits/pixel and RasterByteOrder.Rgb with corresponding palette
System.Windows.Media.PixelFormats.Indexed8 8 bits/pixel and RasterByteOrder.Rgb with corresponding palette
System.Windows.Media.PixelFormats.Pbgra32 32 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Prgba128Float 24 bits/pixel and RasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Rgb24 24 bits/pixel and RasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgb48 48 bits/pixel and RasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgb128Float 24 bits/pixel and RasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgba64 64 bits/pixel and RasterByteOrder.Rgb
Example

This example will use get the WPF System.Windows.Media.ImageSource in an System.Windows.Controls.Image control, use LEADTOOLS to invert it and then set it back into the control.

C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using Leadtools.Windows.Media; 
 
private void ConvertFromSourceExample(System.Windows.Controls.Image imageControl) 
{ 
   // Get the WPF/Silverlight source image in the Image control 
   ImageSource source = imageControl.Source; 
 
   // Convert it to a LEADTOOLS RasterImage 
   using (RasterImage rasterImage = RasterImageConverter.ConvertFromSource(source, ConvertFromSourceOptions.None)) 
   { 
      // Now, use LEADTOOLS to Invert the image 
      Leadtools.ImageProcessing.Color.InvertCommand cmd = new Leadtools.ImageProcessing.Color.InvertCommand(); 
      cmd.Run(rasterImage); 
 
      // Convert the back to WPF/Silverlight 
      source = RasterImageConverter.ConvertToSource(rasterImage, ConvertToSourceOptions.None); 
 
      // Set it back into the Image control 
      imageControl.Source = source; 
   } 
} 
Requirements

Target Platforms

Help Version 22.0.2023.1.23
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.