LEADTOOLS WPF and Silverlight (Leadtools.Windows.Media assembly)
LEAD Technologies, Inc

ConvertFromSource Method

Example 





The System.Windows.Media.ImageSource object containing the image data to convert.
Options to control the conversion operation. Currently there are no extra options and the value of this parameter must be set to ConvertFromSourceOptions.None
Converts a WPF/Silverlight System.Windows.Media.ImageSource object to LEADTOOLS Leadtools.RasterImage. .NET support Silverlight support
Syntax
public static RasterImage ConvertFromSource( 
   ImageSource image,
   ConvertFromSourceOptions options
)
'Declaration
 
Public Shared Function ConvertFromSource( _
   ByVal image As ImageSource, _
   ByVal options As ConvertFromSourceOptions _
) As RasterImage
'Usage
 
Dim image As ImageSource
Dim options As ConvertFromSourceOptions
Dim value As RasterImage
 
value = RasterImageConverter.ConvertFromSource(image, options)
public static RasterImage ConvertFromSource( 
   ImageSource image,
   ConvertFromSourceOptions options
)
 function Leadtools.Windows.Media.RasterImageConverter.ConvertFromSource( 
   image ,
   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

Microsoft Windows Presentation Foundations (WPF)

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

Microsoft Silverlight

Microsoft Silverlight currently offers support for 32-bits/pixels only. So the result from this method will always be a Leadtools.RasterImage object with RasterImage.BitsPerPixel equals to 32.

Use the ConvertToSource method to convert LEADTOOLS Leadtools.RasterImage to a WPF/Silverlight System.Windows.Media.ImageSource object.

The conversion works by copying the image data over to the new destination. Currently, there is no support for sharing memory between a Leadtools.RasterImage and an System.Windows.Media.ImageSource.

For more information refer to RasterImage and WPF/Silverlight.

Example
Copy CodeCopy Code  
Private Sub ConvertFromSourceExample(ByVal imageControl As System.Windows.Controls.Image)
   ' Get the WPF/Silverlight source image in the Image control
   Dim source As ImageSource = imageControl.Source
   ' Convert it to a LEADTOOLS RasterImage
   Using rasterImage As RasterImage = RasterImageConverter.ConvertFromSource(source, ConvertFromSourceOptions.None)
      ' Now, use LEADTOOLS to Invert the image
      Dim cmd As New 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
   End Using
End Sub
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;
   }
}
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;
   }
}
Private Sub ConvertFromSourceExample(ByVal imageControl As System.Windows.Controls.Image)
   ' Get the WPF/Silverlight source image in the Image control
   Dim source As ImageSource = imageControl.Source
   ' Convert it to a LEADTOOLS RasterImage
   Using rasterImage As RasterImage = RasterImageConverter.ConvertFromSource(source, ConvertFromSourceOptions.None)
      ' Now, use LEADTOOLS to Invert the image
      Dim cmd As InvertCommand = New 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
   End Using
End Sub
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

RasterImageConverter Class
RasterImageConverter Members

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.