←Select platform

Percent Property

Summary
Gets or sets the percent of the image dimension in which the border will be found.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public int Percent { get; set; } 
@property (nonatomic, assign) NSInteger percent; 
public int getPercent(); 
public void setPercent( 
   int intValue 
); 
public: 
property int Percent { 
   int get(); 
   void set (    int ); 
} 
Percent # get and set (BorderRemoveCommand) 

Property Value

Percent of the image dimension in which the border will be found. For most images, use 20. For example, if an image is 200 pixels wide, Percent is set to 20 and Border is set to BorderRemoveBorderFlags.Left, then the left border will be found in the area between the left edge of the image and a line 40 pixels from the left edge. If the border is closer to the edge of the image, use a smaller value. If the border is farther from the edge, use a larger value.

Example
C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing.Core; 
using Leadtools.ImageProcessing.Color; 
 
public void BorderRemoveCommandExample() 
{ 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.ThrowExceptionsOnInvalidImages = true; 
 
   RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Clean.tif")); 
 
   // Prepare the command 
   BorderRemoveCommand command = new BorderRemoveCommand(); 
   command.BorderRemove += new EventHandler<BorderRemoveCommandEventArgs>(command_BorderRemove_S1); 
   command.Border = BorderRemoveBorderFlags.All; 
   command.Flags = BorderRemoveCommandFlags.UseVariance; 
   command.Percent = 20; 
   command.Variance = 3; 
   command.WhiteNoiseLength = 9; 
 
   command.Run(image); 
 
} 
 
private void command_BorderRemove_S1(object sender, BorderRemoveCommandEventArgs e) 
{ 
   string Border; 
 
   switch (e.Border) 
   { 
      case BorderRemoveBorderFlags.Top: 
         Border = "Top"; 
         break; 
      case BorderRemoveBorderFlags.Left: 
         Border = "Left"; 
         break; 
      case BorderRemoveBorderFlags.Right: 
         Border = "Right"; 
         break; 
      case BorderRemoveBorderFlags.Bottom: 
         Border = "Bottom"; 
         break; 
      default: 
         Border = ""; 
         break; 
   } 
   MessageBox.Show("Bounds " + "( " + e.BoundingRectangle.Left + ", " + e.BoundingRectangle.Top + ") - " + "( " + e.BoundingRectangle.Right + ", " + e.BoundingRectangle.Bottom + ")" + "\n Border " + Border.ToString()); 
   e.Status = RemoveStatus.Remove; 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
import java.beans.EventHandler; 
import java.io.File; 
import java.io.IOException; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
import static org.junit.Assert.*; 
 
import leadtools.*; 
import leadtools.codecs.*; 
import leadtools.imageprocessing.core.*; 
import leadtools.imageprocessing.color.*; 
 
 
public void borderRemoveCommandExample() { 
 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   // Load an image 
   RasterCodecs codecs = new RasterCodecs(); 
   codecs.setThrowExceptionsOnInvalidImages(true); 
 
   RasterImage image = codecs.load(combine(LEAD_VARS_IMAGES_DIR, 
         "clean.tif"), 1, CodecsLoadByteOrder.BGR, 1, 1); 
 
   // Prepare the command 
   BorderRemoveCommand command = new BorderRemoveCommand(); 
   command.addBorderRemoveCommandListener(command_BorderRemove_S1); 
   command.setBorder(BorderRemoveBorderFlags.ALL.getValue()); 
   command.setFlags(BorderRemoveCommandFlags.USE_VARIANCE.getValue()); 
   command.setPercent(20); 
   command.setVariance(3); 
   command.setWhiteNoiseLength(9); 
 
   command.run(image); 
 
   System.out.println("Command run and image saved to " + combine(LEAD_VARS_IMAGES_DIR, "clean.tif")); 
   assertTrue(new File(combine(LEAD_VARS_IMAGES_DIR, "clean.tif")).exists()); 
 
} 
 
BorderRemoveCommandListener command_BorderRemove_S1 = new BorderRemoveCommandListener() { 
 
   @Override 
   public void onBorderRemoveEvent(BorderRemoveCommandEvent e) { 
      String Border; 
 
      switch (e.getBorder()) { 
 
         // Top 
         case 0x00000004: 
            Border = "Top"; 
            break; 
 
         // Left 
         case 0x00000001: 
            Border = "Left"; 
            break; 
 
         // Right 
         case 0x00000002: 
            Border = "Right"; 
            break; 
 
         // Bottom 
         case 0x00000008: 
            Border = "Bottom"; 
            break; 
 
         default: 
            Border = ""; 
            break; 
 
      } 
 
      System.out.println("Bounds " + "( " + e.getBoundingRectangle().getLeft() + ", " 
            + e.getBoundingRectangle().getTop() + ") - " + "( " + e.getBoundingRectangle().getRight() + ", " 
            + e.getBoundingRectangle().getBottom() + ")" + "\n Border " + Border); 
      e.setStatus(RemoveStatus.REMOVE); 
 
   } 
 
}; 
Requirements

Target Platforms

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

Leadtools.ImageProcessing.Core Assembly

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.