Creates a copy of a a RasterImage object.
public class CloneCommand : Leadtools.Imageprocessing.RasterCommand, Leadtools.Imageprocessing.IRasterCommand Public Class CloneCommandInherits Leadtools.Imageprocessing.RasterCommandImplements Leadtools.Imageprocessing.IRasterCommand
public sealed class CloneCommand : Leadtools.Imageprocessing.IRasterCommand @interface LTCloneCommand : LTRasterCommand public class CloneCommand extends RasterCommand function Leadtools.ImageProcessing.CloneCommand() public ref class CloneCommand : public Leadtools.Imageprocessing.RasterCommand, Leadtools.Imageprocessing.IRasterCommand After the command is run, a copy of the current page of the source image will be in the CloneCommand.DestinationImage property. This property will hold a copy of the image, so the user is responsible for freeing this image after using it.
If a region is defined for the image, the region is also copied.
If the source image has more than one page, then you can use the CloneCommand.AllPages property to control whether to clone all the pages in the image or only the current page.
You can use the RasterImage.Clone method instead of this command to create a clone of an image. If you need to clone a multi-page RasterImage object, then use the RasterImage.CloneAll method. These methods will also clone any metadata (tags, comments and markers) located in the source image however, you lose the benefit of using a progress monitor.
This example will load an image and then clone it before saving it back to disk. For an example on how to clone a multi-page image and show the overall progress monitor, refer to the CloneCommand.AllPages property.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;using LeadtoolsExamples.Common;public void CloneCommandExample(){RasterCodecs codecs = new RasterCodecs();string srcFileName = Path.Combine(ImagesPath.Path, "Image1.cmp");// Load the source image from diskRasterImage image = codecs.Load(srcFileName);// Clone it, first, into conventional memoryCloneCommand command = new CloneCommand();command.CreateFlags = RasterMemoryFlags.Conventional;command.Run(image);RasterImage destImage1 = command.DestinationImage;// Make sure it is in conventional memoryConsole.WriteLine("Memory is: {0}", destImage1.MemoryInformation.MemoryFlags);// Clone it again this time to disk memorycommand.CreateFlags = RasterMemoryFlags.Disk;command.Run(image);RasterImage destImage2 = command.DestinationImage;// Make sure it is in disk memoryConsole.WriteLine("Memory is: {0}", destImage2.MemoryInformation.MemoryFlags);// Clean UpdestImage1.Dispose();destImage2.Dispose();image.Dispose();codecs.Dispose();}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessingPublic Sub CloneCommandExample()Dim codecs As RasterCodecs = New RasterCodecs()Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")' Load the source image from diskDim image As RasterImage = codecs.Load(srcFileName)' Clone it, first, into conventional memoryDim command As CloneCommand = New CloneCommand()command.CreateFlags = RasterMemoryFlags.Conventionalcommand.Run(image)Dim destImage1 As RasterImage = command.DestinationImage' Make sure it is in conventional memoryConsole.WriteLine("Memory is: {0}", destImage1.MemoryInformation.MemoryFlags)' Clone it again this time to disk memorycommand.CreateFlags = RasterMemoryFlags.Diskcommand.Run(image)Dim destImage2 As RasterImage = command.DestinationImage' Make sure it is in disk memoryConsole.WriteLine("Memory is: {0}", destImage2.MemoryInformation.MemoryFlags)' Clean UpdestImage1.Dispose()destImage2.Dispose()image.Dispose()End SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
using Leadtools;using Leadtools.Codecs;using Leadtools.Examples;using Leadtools.ImageProcessing;using Leadtools.Windows.Media;public void CloneCommandExample(RasterImage image){// Clone it, first, into conventional memoryCloneCommand command = new CloneCommand();command.CreateFlags = RasterMemoryFlags.Conventional;command.Run(image);RasterImage destImage1 = command.DestinationImage;// Make sure it is in conventional memoryDebug.WriteLine("Memory is: {0}", destImage1.IsConventionalMemory);Debug.Assert(destImage1.IsConventionalMemory);// Clone it again this time to disk memorycommand.CreateFlags = RasterMemoryFlags.Disk;command.Run(image);RasterImage destImage2 = command.DestinationImage;// Make sure it is in disk memoryDebug.WriteLine("Memory is: {0}", destImage2.IsDiskMemory);Debug.Assert(destImage1.IsDiskMemory);// Clean UpdestImage1.Dispose();destImage2.Dispose();image.Dispose();}
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ImageProcessingImports Leadtools.Windows.MediaPublic Sub CloneCommandExample(ByVal image As RasterImage)' Clone it, first, into conventional memoryDim command As CloneCommand = New CloneCommand()command.CreateFlags = RasterMemoryFlags.Conventionalcommand.Run(image)Dim destImage1 As RasterImage = command.DestinationImage' Make sure it is in conventional memoryDebug.WriteLine("Memory is: {0}", destImage1.IsConventionalMemory)Debug.Assert(destImage1.IsConventionalMemory)' Clone it again this time to disk memorycommand.CreateFlags = RasterMemoryFlags.Diskcommand.Run(image)Dim destImage2 As RasterImage = command.DestinationImage' Make sure it is in disk memoryDebug.WriteLine("Memory is: {0}", destImage2.IsDiskMemory)Debug.Assert(destImage1.IsDiskMemory)' Clean UpdestImage1.Dispose()destImage2.Dispose()image.Dispose()End Sub
|
Products |
Support |
Feedback: CloneCommand Class - Leadtools |
Introduction |
Help Version 19.0.2017.6.19
|

Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.