LEADTOOLS WPFとSilverlight(Leadtools.Windows.Mediaアセンブリ)

フレームを表示

ConvertFromSourceメソッド






変換する画像データを格納するSystem.Windows.Media.ImageSourceオブジェクト。
変換操作を制御するオプション。現時点では、追加のオプションがありません、そして、このパラメーターの値はConvertFromSourceOptions.Noneに設定されなければなりません
LEADTOOLS Leadtools.RasterImageにWPF/Silverlight System.Windows.Media.ImageSourceオブジェクトを変換します。
構文
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
) 

パラメーター

image
変換する画像データを格納するSystem.Windows.Media.ImageSourceオブジェクト。
オプション
変換操作を制御するオプション。現時点では、追加のオプションがありません、そして、このパラメーターの値はConvertFromSourceOptions.Noneに設定されなければなりません

戻り値

変換後の画像を表すLeadtools.RasterImageオブジェクト。
解説

Microsoft Windows表現基礎(WPF)

LEADTOOLSとWPFは異なるピクセル形式をサポートしています。これらのピクセル形式は、場合によっては同一でないかもしれません。変換過程は、ソースデータと最も一致する適当な形式にスキャンラインを変換するように気をつけます。以下のテーブルは、様々なピクセル形式値でイメージを渡すとき、達成される結果ビット/ピクセルバイトオーダーを示します:

ソースPixelFormat 結果ビット/ピクセルとバイトオーダー
System.Windows.Media.PixelFormats.Bgr101010 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr24 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr32 32ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr555 16ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Bgr565 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.BlackWhite 1ビット/ピクセルと黒が白いパレットにあるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Cmyk32 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Gray16 16ビット/ピクセルとRasterByteOrder.Gray
System.Windows.Media.PixelFormats.Gray2 2ビット/ピクセルと2つの濃淡のレベルを格納しているパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Gray32Float 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Gray4 4ビット/ピクセルと16階調を格納しているパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Gray8 8ビット/ピクセルと256の濃淡のレベルを格納しているパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Indexed1 1ビット/ピクセルと対応するパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Indexed2 2ビット/ピクセルと対応するパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Indexed4 4ビット/ピクセルと対応するパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Indexed8 8ビット/ピクセルと対応するパレットによるRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Pbgra32 32ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Prgba128Float 24ビット/ピクセルとRasterByteOrder.Bgr
System.Windows.Media.PixelFormats.Rgb24 24ビット/ピクセルとRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgb48 48ビット/ピクセルとRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgb128Float 24ビット/ピクセルとRasterByteOrder.Rgb
System.Windows.Media.PixelFormats.Rgba64 64ビット/ピクセルとRasterByteOrder.Rgb

Microsoft Silverlight

Microsoft Silverlightは、サポートを32ビット/ピクセルに対してだけ、現時点では提供します。そのため、このメソッドの結果は常にLeadtools.RasterImageオブジェクトとなりRasterImage.BitsPerPixelは32になります。

WPF/Silverlight System.Windows.Media.ImageSourceにLEADTOOLS Leadtools.RasterImageを変換するConvertToSourceメソッドオブジェクトを使います。

変換は、もう一度画像データを新しいデスティネーションへコピーすることによって機能します。現時点では、Leadtools.RasterImageSystem.Windows.Media.ImageSourceの間でメモリを共有することのサポートが、ありません。

詳細については、「RasterImageとWPF/Silverlight」を参照してください。

サンプル

このサンプル意志使用は、System.Windows.Controls.ImageコントロールでWPF/Silverlight System.Windows.Media.ImageSourceを取得して、それを反転するためにLEADTOOLSを使って、それから、コントロールへとそれを設定します。

Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Windows.Media

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
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;
   }
}
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;
   }
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.Windows.Media
Imports Leadtools.ImageProcessing.Color

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
必要条件

ターゲットプラットホーム

参照

参照

RasterImageConverterクラス
RasterImageConverterメンバ