LEADTOOLS画像処理(Leadtools.ImageProcessing.Effectsアセンブリ)

フレームを表示

Flagsプロパティ(CombineCommand)








データ、結果として生じるimageの取り扱いとデスティネーション、ソースと結果として生じるイメージのためのカラープレーンを結合するとき、ソース、デスティネーションの取り扱い、使う操作の取り扱いを定義する7つのグループからのフラグを取得または設定します。
構文
public CombineCommandFlags Flags {get; set;}
'Declaration
 
Public Property Flags As CombineCommandFlags
'Usage
 
Dim instance As CombineCommand
Dim value As CombineCommandFlags
 
instance.Flags = value
 
value = instance.Flags
public CombineCommandFlags Flags {get; set;}
@property (nonatomic, assign) LTCombineCommandFlags flags
public int getFlags()
public void setFlags(int value)
            
 <br/>get_Flags();<br/>set_Flags(value);<br/>Object.defineProperty('Flags'); 
public:
property CombineCommandFlags Flags {
   CombineCommandFlags get();
   void set (    CombineCommandFlags value);
}

属性値

フラグを表す値。フラグは、定義済みの長方形(必然的にでなくimage全体)だけに、適用します。ビットごとのORを使うことができます( | )各々のグループから1つのフラグを指定すること。
解説
ユーザーが以下のフラグの何も設定しないならば: そして、CombineCommandはSourceMasterを内部的に使います。そして、それはオールチャネル(赤くて、緑で青)がソースimageから使われることを意味します。

ユーザーが以下のフラグの何も設定しないならば:

そして、CombineCommandはDestinationMasterを内部的に使います。そして、それはオールチャネル(赤くて、緑で青)がデスティネーションimageから使われることを意味します。
サンプル
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Effects

    
 Public Sub CombineCommandMasterChannelExample()
    Dim codecs As New RasterCodecs()
    codecs.ThrowExceptionsOnInvalidImages = True
  Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image3.cmp"))

    ' Prepare the command
    Dim command As CombineCommand = New CombineCommand
    ' the source image that will be combined with the desintation image that is sent through Command.Run().
    command.SourceImage = leadImage.Clone()
    ' The rectangle that represents the affected area of the destination image.
    command.DestinationRectangle = New LeadRect(leadImage.Width \ 8, leadImage.Height \ 8, leadImage.Width, leadImage.Height)
    command.SourcePoint = New LeadPoint(0, 0)
    ' The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR. the effect will be applied on all 3 channels
    command.Flags = CombineCommandFlags.OperationXor
    command.Run(leadImage)
    codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)

End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Effects;

      
public void CombineMasterChannelExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\Image3.cmp"));

   // Prepare the command
   RasterImage tempImage = image.Clone();
   LeadRect rect = new LeadRect(image.Width / 8, image.Height / 8, image.Width, image.Height);
   CombineCommand command = new CombineCommand();
   // the source image that will be combined with the destination image that is sent through Command.Run().
   command.SourceImage = tempImage;
   // the rectangle that represents the affected area of the destination image.
   command.DestinationRectangle = rect;

   // The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR.
   command.Flags = CombineCommandFlags.OperationXor | CombineCommandFlags.Destination1;
   command.Run(image);
   codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Effects;
using Leadtools.ImageProcessing;

      
public async Task CombineMasterChannelExample()
{
   // Load an image
   RasterCodecs codecs = new RasterCodecs();
   codecs.ThrowExceptionsOnInvalidImages = true;
   // Load the image
   string srcFileName = @"Assets\Image1.cmp";
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Prepare the command
   RasterImage tempImage = image.Clone();
   LeadRect rect = LeadRectHelper.Create(image.Width / 8, image.Height / 8, image.Width, image.Height);
   CombineCommand command = new CombineCommand();
   // the source image that will be combined with the desintation image that is sent through Command.Run().
   command.SourceImage = tempImage;
   // the rectangle that represents the affected area of the destination image.
   command.DestinationRectangle = rect;

   // The combine will Xor the source and destination image, but set the destination values to 1 before doing the XOR.
   command.Flags = CombineCommandFlags.OperationXor | CombineCommandFlags.Destination1;
   command.Run(image);
   //Save as BMP
   string destFileName = @"result.bmp";
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 24);
}
必要条件

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

参照

参照

CombineCommandクラス
CombineCommandメンバ