LEADTOOLS Image Processing (Leadtools.ImageProcessing.SpecialEffects assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
PerspectiveCommand Class
See Also  Members  
Leadtools.ImageProcessing.SpecialEffects Namespace : PerspectiveCommand Class



Gives the image a 3-D depth, as if it exists on a flat plane skewed into different shapes. This command is available in the Raster Pro and above toolkits.

Object Model

PerspectiveCommand Class

Syntax

Visual Basic (Declaration) 
Public Class PerspectiveCommand 
   Inherits Leadtools.ImageProcessing.RasterCommand
   Implements IRasterCommand 
Visual Basic (Usage)Copy Code
Dim instance As PerspectiveCommand
C# 
public class PerspectiveCommand : Leadtools.ImageProcessing.RasterCommand, IRasterCommand  
C++/CLI 
public ref class PerspectiveCommand : public Leadtools.ImageProcessing.RasterCommand, IRasterCommand  

Example

Run the Leadtools.ImageProcessing.SpecialEffects.PerspectiveCommand on an image.

Visual BasicCopy Code
Public Sub PerspectiveCommandExample()
   Dim codecs As New RasterCodecs()
   codecs.ThrowExceptionsOnInvalidImages = True

   Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"))

   ' Prepare the command
   Dim cornerPoints() As LeadPoint
   ReDim cornerPoints(3)
   cornerPoints(0).X = CInt(leadImage.Width * 3 / 9)
   cornerPoints(0).Y = CInt(leadImage.Height * 1 / 12)
   cornerPoints(1).X = CInt(leadImage.Width * 3 / 4)
   cornerPoints(1).Y = CInt(leadImage.Height * 2 / 12)
   cornerPoints(2).X = CInt(leadImage.Width * 2 / 10)
   cornerPoints(2).Y = CInt(leadImage.Height * 8 / 10)
   cornerPoints(3).X = CInt(leadImage.Width * 10 / 11)
   cornerPoints(3).Y = CInt(leadImage.Height * 7 / 10)
   Dim command As New PerspectiveCommand
   command.CornerPoints = cornerPoints
   command.FillColor = New RasterColor(255, 255, 255)
   command.Type = PerspectiveCommandType.Color
   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
C#Copy Code
public void PerspectiveCommandExample()
   {
      // Load an image
      RasterCodecs codecs = new RasterCodecs();
      codecs.ThrowExceptionsOnInvalidImages = true;

      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "Master.jpg"));

      // Prepare the command
      LeadPoint[] cornerPoint = new LeadPoint[4];
      cornerPoint[0].X = image.Width * 3 / 9;
      cornerPoint[0].Y = image.Height * 1 / 12;
      cornerPoint[1].X = image.Width * 3 / 4;
      cornerPoint[1].Y = image.Height * 2 / 12;
      cornerPoint[2].X = image.Width * 2 / 10;
      cornerPoint[2].Y = image.Height * 8 / 10;
      cornerPoint[3].X = image.Width * 10 / 11;
      cornerPoint[3].Y = image.Height * 7 / 10;
      PerspectiveCommand command  = new PerspectiveCommand();
      command.CornerPoints = cornerPoint;
      command.FillColor = new RasterColor(255, 255, 255);
      command.Type = PerspectiveCommandType.Color;
      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";
}

Remarks

  • This method supports 12- and 16-bit grayscale and 48- and 64-bit color images. Support for 12- and 16-bit grayscale and 48- and 64-bit color images is available only in the Document/Medical toolkits.
  • If the image has a region, this method works only on the region. If the image does not have a region, this method works on the entire image.
  • This method does not support signed data images.
  • This command does not support 32-bit grayscale images.

Inheritance Hierarchy

System.Object
   Leadtools.ImageProcessing.RasterCommand
      Leadtools.ImageProcessing.SpecialEffects.PerspectiveCommand

Requirements

Target Platforms: Microsoft .NET Framework 2.0, Windows 2000, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7

See Also