Visual Basic (Declaration) | |
---|---|
Public Class ScrambleCommand Inherits RasterCommand Implements IRasterCommand |
Visual Basic (Usage) | Copy Code |
---|---|
Dim instance As ScrambleCommand |
C# | |
---|---|
public class ScrambleCommand : RasterCommand, IRasterCommand |
C++/CLI | |
---|---|
public ref class ScrambleCommand : public RasterCommand, IRasterCommand |
This example will scramble the upper-left quadrant of an image using the key 123 and then save the image to disk. It will then unscrambles it and saves it disk for comparism.
Visual Basic | Copy Code |
---|---|
Public Sub ScrambleCommandExample() Dim codecs As RasterCodecs = New RasterCodecs() Dim srcFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp") Dim scrambledFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_scrambled.bmp") Dim unscrambledFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1_unscrambled.bmp") ' Load the source image from disk Dim image As RasterImage = codecs.Load(srcFileName) Dim rc As LeadRect = New LeadRect(0, 0, image.Width \ 2, image.Height \ 2) Dim key As Integer = 123 ' Scramble it and save it to disk Dim command As ScrambleCommand = New ScrambleCommand() command.Flags = ScrambleCommandFlags.Encrypt command.Rectangle = rc command.Key = key command.Run(image) codecs.Save(image, scrambledFileName, RasterImageFormat.Bmp, 24) ' Unscramble the image and save it to disk command.Flags = ScrambleCommandFlags.Decrypt command.Run(image) codecs.Save(image, unscrambledFileName, RasterImageFormat.Bmp, 24) ' Clean Up image.Dispose() 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 ScrambleCommandExample() { RasterCodecs codecs = new RasterCodecs(); string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); string scrambledFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1_scrambled.bmp"); string unscrambledFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1_unscrambled.bmp"); // Load the source image from disk RasterImage image = codecs.Load(srcFileName); LeadRect rc = new LeadRect(0, 0, image.Width / 2, image.Height / 2); int key = 123; // Scramble it and save it to disk ScrambleCommand command = new ScrambleCommand(); command.Flags = ScrambleCommandFlags.Encrypt; command.Rectangle = rc; command.Key = key; command.Run(image); codecs.Save(image, scrambledFileName, RasterImageFormat.Bmp, 24); // Unscramble the image and save it to disk command.Flags = ScrambleCommandFlags.Decrypt; command.Run(image); codecs.Save(image, unscrambledFileName, RasterImageFormat.Bmp, 24); // Clean Up image.Dispose(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; } |
SilverlightCSharp | Copy Code |
---|---|
SilverlightVB | Copy Code |
---|---|
This command is available in the Document/Medical Imaging editions toolkits.
Scrambling a rectangular area means that the pixels in that area are shuffled around into a pseudo-random location within the area.
- No colors are introduced
- Color counts remain unchanged
Given the same encrypt area (defined by ScrambleCommand.Rectangle) and the same ScrambleCommand.Key, setting ( ScrambleCommand.Flags = ScrambleCommandFlags.Encrypt) is the inverse of (ScrambleCommand.Flags = ScrambleCommandFlags.Decrypt).
System.Object
Leadtools.ImageProcessing.RasterCommand
Leadtools.ImageProcessing.ScrambleCommand
Target Platforms: Silverlight, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only), Windows Phone 7