←Select platform

CopyRectangleCommand Class

Summary
Copies a portion of an image to create another image that is the size of the rectangle that you specify.
Syntax
C#
Objective-C
C++/CLI
Java
Python
public class CopyRectangleCommand : RasterCommand 
@interface LTCopyRectangleCommand : LTRasterCommand 
public class CopyRectangleCommand extends RasterCommand 
public ref class CopyRectangleCommand : public RasterCommand   
class CopyRectangleCommand(RasterCommand): 
Remarks

This command duplicates the original image palette, if one is required in the new image.

This command uses image coordinates to specify the area to be copied. Therefore, you must account for the RasterImage.ViewPerspective of the image. For information about image coordinates, refer to Accounting for View Perspective.

If a region is defined for the source image, the region is also copied, and the region is clipped if necessary.

The CopyRectangleCommand command works by creating a new image in the DestinationImage property from the image passed to the Run method.

Example

This example will create a new image from the top left portion of an existing image.

C#
Java
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.ImageProcessing; 
 
 
public void CopyRectangleCommandExample() 
{ 
	RasterCodecs codecs = new RasterCodecs(); 
 
	string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); 
	string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "CopyRectangleCommand.bmp"); 
 
	// Load the source image from disk 
	RasterImage srcImage = codecs.Load(srcFileName); 
 
	// Create an image from the top/right portion of this image 
	CopyRectangleCommand command = new CopyRectangleCommand(); 
	command.Rectangle = new LeadRect( 
	   srcImage.Width / 8, 
	   srcImage.Height / 8, 
	   srcImage.Width / 3, 
	   srcImage.Height / 3); 
	command.CreateFlags = RasterMemoryFlags.Conventional; 
	command.Run(srcImage); 
 
	RasterImage destImage = command.DestinationImage; 
 
	// Save it to disk 
	codecs.Save(destImage, destFileName, RasterImageFormat.Bmp, 24); 
 
	// Clean Up 
	srcImage.Dispose(); 
	destImage.Dispose(); 
	codecs.Dispose(); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
 
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.*; 
 
 
public void copyRectangleCommandExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
   RasterCodecs codecs = new RasterCodecs(); 
   String srcFileName = combine(LEAD_VARS_IMAGES_DIR, "rgsref.cmp"); 
   String destFileName = combine(LEAD_VARS_IMAGES_DIR, "CopyRectangleCommand.bmp"); 
 
   // Load the source image from disk 
   RasterImage srcImage = codecs.load(srcFileName); 
 
   // Create an image from the top/right portion of this image 
   CopyRectangleCommand command = new CopyRectangleCommand(); 
   command.setRectangle(new LeadRect(srcImage.getWidth() / 8, srcImage.getHeight() / 8, 
         srcImage.getWidth() / 3, srcImage.getHeight() / 3)); 
   command.setCreateFlags(RasterMemoryFlags.CONVENTIONAL.getValue()); 
   command.run(srcImage); 
 
   RasterImage destImage = command.getDestinationImage(); 
 
   // Save it to disk 
   codecs.save(destImage, destFileName, RasterImageFormat.BMP, 24); 
   assertTrue("file unsuccessfully saved to " + destFileName, (new File(destFileName)).exists()); 
   System.out.printf("File saved successfully to %s%n", destFileName); 
 
   // Clean Up 
   srcImage.dispose(); 
   destImage.dispose(); 
   codecs.dispose(); 
} 
Requirements

Target Platforms

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

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