←Select platform

Clip Method

Summary

Trims this RasterRegion to fit inside a specified LeadRect.

Syntax
C#
VB
Objective-C
C++
Java
public void Clip( 
   LeadRect rect 
) 
Public Sub Clip( _ 
   ByVal rect As LeadRect _ 
)  
- (BOOL)clip:(LeadRect)rect error:(NSError **)error 
public void clip(LeadRect rect) 
public: 
void Clip(  
   LeadRect rect 
)  

Parameters

rect
A LeadRect that defines the clipping boundaries.

Example

This example will create a large elliptical region in an image and fill it with yellow. It will then clip this region by 10 pixels from each side and fill the new region with red.

C#
VB
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
using LeadtoolsExamples.Common; 
 
public void RasterRegionClipExample() 
{ 
   string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp"); 
   string destFileName = Path.Combine(ImagesPath.Path, "Image1_ClipRegion.bmp"); 
 
   using (RasterCodecs codecs = new RasterCodecs()) 
   { 
      // Load the source image 
      using (RasterImage image = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1)) 
      { 
         // Add a large elliptical region  
         image.AddEllipseToRegion(null, new LeadRect(0, 0, image.ImageWidth, image.ImageHeight), RasterRegionCombineMode.Set); 
 
         // Fill the image with yellow 
         FillCommand cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow)); 
         cmd.Run(image); 
 
         // Get the region 
         using (RasterRegion region = image.GetRegion(null)) 
         { 
            // Clip this region by 10 pixels from each end 
            LeadRect bounds = region.GetBounds(); 
            bounds.Inflate(-10, -10); 
 
            region.Clip(bounds); 
 
            // Re-set this region into the image 
            image.SetRegion(null, region, RasterRegionCombineMode.Set); 
         } 
 
         // Now fill with red and save 
         cmd = new FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red)); 
         cmd.Run(image); 
 
         codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24); 
      } 
   } 
} 
Imports Leadtools 
Imports Leadtools.Codecs 
Imports Leadtools.ImageProcessing 
 
Public Sub RasterRegionClipExample() 
   Dim codecs As New RasterCodecs() 
 
   Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp") 
   Dim destFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_ClipRegion.bmp") 
 
   ' Load the source image 
   Using image As RasterImage = codecs.Load(srcFileName, 0, CodecsLoadByteOrder.BgrOrGray, 1, 1) 
      ' Add a large elliptical region  
      image.AddEllipseToRegion(Nothing, New LeadRect(0, 0, image.ImageWidth, image.ImageHeight), RasterRegionCombineMode.Set) 
 
      ' Fill the image with yellow 
      Dim cmd As New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Yellow)) 
      cmd.Run(image) 
 
      ' Get the region 
      Using region As RasterRegion = image.GetRegion(Nothing) 
         ' Clip this region by 10 pixels from each end 
         Dim bounds As LeadRect = region.GetBounds() 
         bounds.Inflate(-10, -10) 
 
         region.Clip(bounds) 
 
         ' Re-set this region into the image 
         image.SetRegion(Nothing, region, RasterRegionCombineMode.Set) 
      End Using 
 
      ' Now fill with red and save 
      cmd = New FillCommand(RasterColor.FromKnownColor(RasterKnownColor.Red)) 
      cmd.Run(image) 
 
      codecs.Save(image, destFileName, RasterImageFormat.Bmp, 24) 
   End Using 
 
   codecs.Dispose() 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

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

Leadtools Assembly