LEADTOOLS(Leadtoolsアセンブリ)

フレームを表示

AddBorderToRegionメソッド








ポイントのX座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
ポイントのY座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
境界線の色。
リージョンのために下の停止ポイントを設定する下限許容値値。
リージョンのために下の停止ポイントを設定する上限許容値値。
定義されている場合、既存の画像リージョンに関して実施するアクション。
特定のピクセルと下降の値と上限許容値によって定義される範囲に入るが、borderColorと等しくない値によるピクセルのリージョンを作成します。
構文
'Declaration
 
Public Sub AddBorderToRegion( _
   ByVal left As Integer, _
   ByVal top As Integer, _
   ByVal borderColor As RasterColor, _
   ByVal lowerToleranceColor As RasterColor, _
   ByVal upperToleranceColor As RasterColor, _
   ByVal combineMode As RasterRegionCombineMode _
) 
'Usage
 
Dim instance As RasterImage
Dim left As Integer
Dim top As Integer
Dim borderColor As RasterColor
Dim lowerToleranceColor As RasterColor
Dim upperToleranceColor As RasterColor
Dim combineMode As RasterRegionCombineMode
 
instance.AddBorderToRegion(left, top, borderColor, lowerToleranceColor, upperToleranceColor, combineMode)
- (BOOL)addBorderToRegion:(NSInteger)left 
                      top:(NSInteger)top 
              borderColor:(LTRasterColor *)borderColor 
      lowerToleranceColor:(LTRasterColor *)lowTolColor 
      upperToleranceColor:(LTRasterColor *)upTolColor 
              combineMode:(LTRasterRegionCombineMode)combineMode 
                    error:(NSError **)error
            
public void addBorderToRegion(
  int left, 
  int top, 
  RasterColor borderColor, 
  RasterColor lowerToleranceColor, 
  RasterColor upperToleranceColor, 
  RasterRegionCombineMode combineMode
)
            
 function Leadtools.RasterImage.AddBorderToRegion( 
   left ,
   top ,
   borderColor ,
   lowerToleranceColor ,
   upperToleranceColor ,
   combineMode 
)

パラメーター

left
ポイントのX座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
ポイントのY座標。指定されたポイントのカラーは、リージョンを設定するのに用いられます。
borderColor
境界線の色。
lowerToleranceColor
リージョンのために下の停止ポイントを設定する下限許容値値。
upperToleranceColor
リージョンのために下の停止ポイントを設定する上限許容値値。
combineMode
定義されている場合、既存の画像リージョンに関して実施するアクション。
解説

カラービットマップの場合:

ピクセル (x, y)の値が(125、125、125)でlowerToleranceColorが(20,30,15)である場合、下限は(105、95、110)になります。upperToleranceColorがそうである(20,30,15)ならば、上の停止ポイントは(145,155,140)です。この場合、値が(105,95,110)と(145,155,140)の間にあるピクセルは非境界のピクセルであり、リージョンに含まれます。この範囲の外側にある値またはborderColorに等しい値を持つピクセルは、境界のピクセルとみなされます。

グレースケールビットマップの場合:

lowerToleranceColorの最小限のチャネル許容値値は下の停止ポイントを設定するのに用いられます、そして、upperToleranceColorの最小限のチャネル許容値値は上の停止ポイントを設定するのに用いられます。たとえば、ピクセル(x,y)の値が(125,125,125)で、lowerToleranceColorが(20,30,15)の場合、3つの値の最小値(15)を使用して下限(110,110,110)が決定されます。upperToleranceColorがそうである(10,25,20)ならば、その3ビットバイト(10)の最小値は(135,135,135)の上の停止ポイントを作成するのに用いられます。この場合、値が(110、110、110)と(135,135,135)の間にあるピクセルは非境界のピクセルであり、リージョンに含まれます。この範囲の外側にある値またはborderColorに等しい値を持つピクセルは、境界のピクセルとみなされます。

このメソッドは、符合付き/unsigedされたデータイメージをサポートします。

既存のリージョンを更新するために、新しいリージョンがどのようにcombineModeパラメーターを用いて既存のものと結合されることになっているかについて指定します。詳細については、「RasterRegionCombineMode」を参照してください。

AddBorderToRegion関数は、拡張グレースケールマスクを使うことができます。詳細については、「グレースケールイメージ」を参照してください。

詳細については、「リージョンの作成」を参照してください。

詳細については、「リージョンの保存」を参照してください。

詳細については、「既存のリージョンの操作」を参照してください。

サンプル
Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.Core
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Controls
Imports Leadtools.Dicom
Imports Leadtools.Drawing
Imports Leadtools.Svg

      
Public Sub AddBorderToRegionExample()
   Dim codecs As RasterCodecs = New RasterCodecs()
   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")
   Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_AddBorderToRegion.bmp")

   ' Load the image
   Dim image As RasterImage = codecs.Load(srcFileName)

   ' Posterize the image to decrease the number of colors
   Dim posterize As PosterizeCommand = New PosterizeCommand(16)
   posterize.Run(image)

   ' Specify a pixel in the upper left of the displayed image
   Dim pt As LeadPoint = New LeadPoint(image.ImageWidth \ 8, image.ImageHeight \ 8)

   ' Adjust the point in case the view perspective is not TopLeft
   pt = image.PointToImage(RasterViewPerspective.TopLeft, pt)

   ' Create a border region at this point
   Dim borderColor As RasterColor = image.GetPixelColor(pt.Y, pt.X)
   Dim lowerColor As RasterColor = New RasterColor(20, 30, 150)
   Dim upperColor As RasterColor = New RasterColor(15, 30, 10)
   image.AddBorderToRegion(pt.X, pt.Y, borderColor, lowerColor, upperColor, RasterRegionCombineMode.Set)

   ' Fill the region with blue
   Dim fill As FillCommand = New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Blue))
   fill.Run(image)

   ' Save the image
   codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24)

   image.Dispose()
   codecs.Dispose()
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;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;
using Leadtools.Drawing;
using Leadtools.Controls;
using Leadtools.Svg;

      
public void AddBorderToRegionExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = Path.Combine(ImagesPath.Path,"Image1.cmp");
   string destFileName = Path.Combine(ImagesPath.Path,"Image1_AddBorderToRegion.bmp");

   // Load the image
   RasterImage image = codecs.Load(srcFileName);

   // Posterize the image to decrease the number of colors
   PosterizeCommand posterize = new PosterizeCommand(16);
   posterize.Run(image);

   // Specify a pixel in the upper left of the displayed image
   LeadPoint pt = new LeadPoint(image.ImageWidth / 8, image.ImageHeight / 8);

   // Adjust the point in case the view perspective is not TopLeft
   pt = image.PointToImage(RasterViewPerspective.TopLeft, pt);

   // Create a border region at this point
   RasterColor borderColor = image.GetPixelColor(pt.Y, pt.X);
   RasterColor lowerColor = new RasterColor(20, 30, 150);
   RasterColor upperColor = new RasterColor(15, 30, 10);
   image.AddBorderToRegion(pt.X, pt.Y, borderColor, lowerColor, upperColor, RasterRegionCombineMode.Set);

   // Fill the region with blue
   FillCommand fill = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Blue));
   fill.Run(image);

   // Save the image
   codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24);

   image.Dispose();
   codecs.Dispose();
}
RasterImageExamples.prototype.AddBorderToRegionExample = function ( ) 
{
   Tools.SetLicense ( ) ;

   with ( Leadtools ) 
   {
      with ( Leadtools.Codecs ) {

      var codecs = new RasterCodecs();

      var srcFileName = "Assets\\Image1.cmp";
      var destFileName = "Image1_AddBorderToRegion.bmp";
      var image ;
      // Load the image
      return Tools.AppInstallFolder().getFileAsync(srcFileName).then ( function ( loadFile ) {
         return codecs.loadAsync(LeadStreamFactory.create(loadFile))})
         .then ( function ( img ) {
            image = img ;

            // Posterize the image to decrease the number of colors
            var posterize = new Leadtools.ImageProcessing.Color.PosterizeCommand(16);
            posterize.run(image);

            // Specify a pixel in the upper left of the displayed image
            var pt = LeadPointHelper.create(image.imageWidth / 8, image.imageHeight / 8);

            // Adjust the point in case the view perspective is not TopLeft
            pt = image.pointToImage(RasterViewPerspective.topLeft, pt);

            // Create a border region at this point
            var borderColor = image.getPixelColor(pt.Y, pt.X);
            var lowerColor = RasterColorHelper.create(20, 30, 150);
            var upperColor = RasterColorHelper.create(15, 30, 10);
            image.addBorderToRegion(pt.x, pt.y, borderColor, lowerColor, upperColor, RasterRegionCombineMode.set);

            // Fill the region with blue
            var fill = new Leadtools.ImageProcessing.FillCommand(RasterColorHelper.fromKnownColor(RasterKnownColor.blue));
            fill.run (image);

            // Save the image
            return Tools.AppLocalFolder().createFileAsync(destFileName)
         })
         .then(function (saveFile) {
               var saveStream = LeadStreamFactory.create(saveFile);
         
               return codecs.saveAsync(image, saveStream, RasterImageFormat.bmp, 24)})
                  .then ( function ( ) {

                     image.close();
                     codecs.close();
                  });
         }
      }
   }
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.Core;
using Leadtools.ImageProcessing.Color;
using Leadtools.Dicom;

      
public async Task AddBorderToRegionExample()
{
   RasterCodecs codecs = new RasterCodecs();
   string srcFileName = @"Assets\Image1.cmp";
   string destFileName = @"Image1_AddBorderToRegion.bmp";

   // Load the image
   StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
   RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));

   // Posterize the image to decrease the number of colors
   PosterizeCommand posterize = new PosterizeCommand(16);
   posterize.Run(image);

   // Specify a pixel in the upper left of the displayed image
   LeadPoint pt = LeadPointHelper.Create(image.ImageWidth / 8, image.ImageHeight / 8);

   // Adjust the point in case the view perspective is not TopLeft
   pt = image.PointToImage(RasterViewPerspective.TopLeft, pt);

   // Create a border region at this point
   RasterColor borderColor = image.GetPixelColor(pt.Y, pt.X);
   RasterColor lowerColor = RasterColorHelper.Create(20, 30, 150);
   RasterColor upperColor = RasterColorHelper.Create(15, 30, 10);
   image.AddBorderToRegion(pt.X, pt.Y, borderColor, lowerColor, upperColor, RasterRegionCombineMode.Set);

   // Fill the region with blue
   FillCommand fill = new FillCommand(RasterColorHelper.FromKnownColor(RasterKnownColor.Blue));
   fill.Run(image);

   // Save the image
   StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
   ILeadStream saveStream = LeadStreamFactory.Create(saveFile);
   await codecs.SaveAsync(image, saveStream, RasterImageFormat.Bmp, 24);

   image.Dispose();
   codecs.Dispose();
}
必要条件

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

参照

参照

RasterImageクラス
RasterImageメンバ