XImage.Raster Developer Guide
User Manual: Pdf
Open the PDF directly: View PDF .
Page Count: 121
Download | ![]() |
Open PDF In Browser | View PDF |
RasterEdge.XImage.Raster Developer Guide RasterEdge.DocImagingSDK 9.8.7 2016-06-11 Contents Getting Started .......................................................................................................................... 1 System Requirements for .NET .......................................................................................... 1 Reference RasterEdge.XImage.Raster in .NET project....................................................... 2 FAQ .................................................................................................................................... 3 Load ........................................................................................................................................... 4 Base Load .......................................................................................................................... 4 Load with option ............................................................................................................... 6 Save ........................................................................................................................................... 9 Base Save........................................................................................................................... 9 Save With Option ............................................................................................................ 10 Properties ................................................................................................................................ 15 Color space ...................................................................................................................... 15 Compression.................................................................................................................... 16 Resolution ....................................................................................................................... 17 Page count ....................................................................................................................... 18 Page Width/Height .......................................................................................................... 19 Clone ............................................................................................................................... 20 GetDiskSize ...................................................................................................................... 21 Convert .................................................................................................................................... 22 Convert To Bitmap ........................................................................................................... 22 Convert To Other Format ................................................................................................ 24 Multipage Handle.................................................................................................................... 27 Combine document......................................................................................................... 27 Split Document ................................................................................................................ 27 Delete pages .................................................................................................................... 28 Extract pages ................................................................................................................... 28 Reorder pages ................................................................................................................. 29 Insert page ...................................................................................................................... 30 Special Effect ........................................................................................................................... 31 Adaptive blur ................................................................................................................... 31 Adaptive resize ................................................................................................................ 31 Adaptive threshold .......................................................................................................... 32 Add noise......................................................................................................................... 33 Auto level ........................................................................................................................ 34 Append ............................................................................................................................ 34 Auto gamma .................................................................................................................... 36 Auto orient ...................................................................................................................... 36 Apply median filter to image ........................................................................................... 37 Bilevel .............................................................................................................................. 37 Blueshift .......................................................................................................................... 37 Blur .................................................................................................................................. 38 Buttonize ......................................................................................................................... 39 CannyEdge ....................................................................................................................... 40 Charcoa ........................................................................................................................... 41 Change image’s contrast ................................................................................................. 42 Change image’s brightness and contract ........................................................................ 42 Chrominance sub sample ................................................................................................ 43 Colorize............................................................................................................................ 44 Compare .......................................................................................................................... 44 Cropping .......................................................................................................................... 45 Cycle colormap ................................................................................................................ 45 Decipher .......................................................................................................................... 46 Deskew ............................................................................................................................ 47 Distort.............................................................................................................................. 47 Effect3D ........................................................................................................................... 47 Emboss ............................................................................................................................ 48 EnCipher .......................................................................................................................... 49 Enhance ........................................................................................................................... 50 Equalize ........................................................................................................................... 50 Erase ................................................................................................................................ 51 Fill with opaque color ...................................................................................................... 51 Fill with transparent color ............................................................................................... 53 Flip ................................................................................................................................... 54 Flop.................................................................................................................................. 54 Frame .............................................................................................................................. 55 Gamma ............................................................................................................................ 55 Gaussian blur................................................................................................................... 56 Grayscale ......................................................................................................................... 57 HoughLine ....................................................................................................................... 58 Implode ........................................................................................................................... 58 JPEG smoothing............................................................................................................... 59 Kuwahara......................................................................................................................... 59 Layer merge ..................................................................................................................... 60 Level ................................................................................................................................ 61 Linear stretch .................................................................................................................. 61 Magnify ........................................................................................................................... 62 Merge .............................................................................................................................. 63 Modulate ......................................................................................................................... 63 Monochrome .................................................................................................................. 64 Morphology ..................................................................................................................... 65 Motion blur ..................................................................................................................... 65 Negate ............................................................................................................................. 66 Oil paint ........................................................................................................................... 66 Optimized huffman ......................................................................................................... 67 Perceptible ...................................................................................................................... 67 Posterize .......................................................................................................................... 67 Quantize image’s color .................................................................................................... 68 Reduce noise ................................................................................................................... 69 Remove alpha channel .................................................................................................... 69 Replace color ................................................................................................................... 70 Resample ......................................................................................................................... 71 ReSize .............................................................................................................................. 71 Resize image to thumbnail size ....................................................................................... 72 Roll................................................................................................................................... 73 Rotate .............................................................................................................................. 73 Rotational blur................................................................................................................. 74 Segment .......................................................................................................................... 75 Selective blur ................................................................................................................... 75 Separate .......................................................................................................................... 76 Sepia tone ....................................................................................................................... 76 Set delay time.................................................................................................................. 77 Set interlace .................................................................................................................... 78 Shade............................................................................................................................... 78 Shadow ............................................................................................................................ 78 Sharpen ........................................................................................................................... 78 Shear ............................................................................................................................... 79 Sketch .............................................................................................................................. 80 Solarize ............................................................................................................................ 81 Splice ............................................................................................................................... 81 Spread ............................................................................................................................. 82 Swirl ................................................................................................................................. 83 Texture............................................................................................................................. 83 Threshold ........................................................................................................................ 84 Transform color space ..................................................................................................... 85 Transform compression ................................................................................................... 85 Transform compress quality ............................................................................................ 86 Transform GIF version ..................................................................................................... 86 Transform PNG compress level ....................................................................................... 87 Transform PNG compress strategy .................................................................................. 88 Transform PNG filter........................................................................................................ 88 Transform resolution ....................................................................................................... 89 Transpose ........................................................................................................................ 89 Transverse ....................................................................................................................... 90 Trim ................................................................................................................................. 90 Vignette ........................................................................................................................... 91 Wave................................................................................................................................ 92 Draw Annotation ..................................................................................................................... 92 Arc ................................................................................................................................... 92 Bezier............................................................................................................................... 95 Circle................................................................................................................................ 97 Ellipse .............................................................................................................................. 99 FreeHand ....................................................................................................................... 101 Image............................................................................................................................. 104 Line ................................................................................................................................ 105 Polygon .......................................................................................................................... 108 Polygon Line .................................................................................................................. 110 Rectangle ....................................................................................................................... 112 Text ................................................................................................................................ 114 Getting Started System Requirements for .NET Supported Operating System The following Microsoft Windows operating systems are supported: Microsoft Windows XP Home Edition Microsoft Windows XP Professional Edition Microsoft Windows XP Professional x64 Edition Microsoft Windows 2003 Server Microsoft Windows 2008 Server R2 Microsoft Windows Vista Microsoft Windows Vista x64 Edition Microsoft Windows 7 Microsoft Windows 7 Enterprise x64 Edition Microsoft Windows 7 Professional x64 Edition Microsoft Windows 2012 Server x64 Edition Development Environments You can use RasterEdge.XImage.Raster for .NET to develop applications in any development environment that targets the .NET platform, but the following environments are explicitly supported: Microsoft Visual Studio 2005 Microsoft Visual Studio 2008 Microsoft Visual Studio 2010 Microsoft Visual Studio 2011 Microsoft Visual Studio 2012 Microsoft Visual Studio 2013 Microsoft Visual Studio 2015 .NET Framework versions supported The following .NET Framework versions are supported: .NET Framework 2.0 .NET Framework 3.0 .NET Framework 3.5 .NET Framework 4.0 1 .NET Framework 4.5 .NET Framework 4.5.1 .NET Framework 4.5.2 .NET Framework 4.6 Reference RasterEdge.XImage.Raster in .NET project Necessary Libraries To use RasterEdge.XDoc.PDF library successfully, the following libraries are necessary: RasterEdge.Imaging.Basic.dll RasterEdge.XImage.Raster.Core.dll RasterEdge.XImage.Raster.dll Add References The following steps will show you how to use in Visual Studio .NET: 1. In The Solution Explorer, expand the project node you want to add a reference to. 2. Right-click the project’s References node and select Add Reference. 3. In the Add Reference dialog box, Click Browse and Navigate to the specified folder. 4. Select the dlls as listed in the following screenshot, Click OK. 5. The RasterEdge.XImage.Raster for .NET reference appears under the project's References node. If you want to know how to select dlls according to your specific development environment, please refer to the Readme.txt file in the /Bin directory. 2 FAQ Errors On Visual Studio If you get the error as follows: “Could not load file or assembly 'RasterEdge.XImage.Raster ’or one of its dependenci es. An attempt was made to load a program with an incorrect format.” Please check your project configures as following ways: 1. If you are using the .NET Framework 4.0 dlls, please confirm that: Right-click the project -> Properties -> a. Application -> Target framework: .NET Framework 4 or higher b. Build -> Platform target: x86 if using x86 dlls, x64 if using x64. 2. If you are using the .NET Framework 2.0 dlls, please confirm that: Right-click the project -> Properties -> c. Application -> Target framework: .NET Framework 3.0 or 3.5 d. Build -> Platform target: x86 if using x86 dlls, x64 if using x64. Errors On IIS If you configure IIS to run and 500.19 error occurs, then it may be caused by: 1. Not registered the .net framework to the iis. (One of reasons: install a .net framework before the installation of iis.) 2. The site configured in IIS has no sufficient authority to operate. (Modify permission) There are some solutions: 1. cd to C:\Windows\Microsoft.NET\Framework64\v2.0.50727,Command to re-register net framework to the iis:aspnet_regiis-i. 2. Right-click the correspond site-> Edit Permissions -> Security -> Group or user names-> Edit -> Add -> Add Everyone usersgiven Full Control permissions. If you get the error as follows: “Could not load file or assembly “RasterEdge.Imaging.Basic” or any other one assembly or one of its dependencies. An attempt was made to load a program with an incorrect format.” Please check your IIS configure as following ways: a. If you are using the .NET framework 4.0 or higher dlls, confirm that Web.config is using the content in Web(for .net4.0 or higher).Config file. b. After checking first step, if you are still facing the issue, confirm that: If you are using x64 dlls, “Application Pools” -> "Set Application Pool Defaults… "->" Enable 32-Bit Applications" should be false. If you are using x86 dlls, “Application Pools” -> "Set Application Pool Defaults…" -> "Enable 32-Bit Applications" should be true. 3 Load Base Load Load RasterImage object from file path, stream, bitmap, Hbitmap, byte array and so on. C# //load a RasterImage object from file path. RasterImage tifDoc = new RasterImage(@"F:\input.png"); Related API(s) (RasterImage.cs): public RasterImage(string filePath); Description: Load RasterImage object from file path Parameters: Name Description Valid Value filePath input file path - public RasterImage(Bitmap bmp); Description: Load RasterImage object from bitmap. Parameters: Name Description input bitmap bmp Valid Value can’t be null public RasterImage(Bitmap[] bmps); Description: Load RasterImage object from bitmap array. Parameters: Name Description array of bitmap bmps Valid Value can’t be null public RasterImage(byte[] imageDataBytes); Description: Load RasterImage object from file’s data. Parameters: Name Description Valid Value imageDataBytes the whole data of the input can’t be null file 4 public RasterImage(Stream imageStream); Description: Load RasterImage object from the input stream. Parameters: Name Description imageStream input stream public RasterImage(int width, int height, Color background); Description: Load a pure RasterImage object with specified width and height. Parameters: Name Description width width of RasterImage object height height of RasterImage object background color of RasterImage object public RasterImage(IntPtr Hbitmap); Description: Load a RasterImage object from Hbitmap Parameters: Name Description Hbitmap the input Hbitmap public RasterImage(IntPtr Hbitmap, IntPtr Hpalette); Description: Load a RasterImage object from Hbitmap with palette Parameters: Name Description Hbitmap the input Hbitmap Hpalette input palette public int LoadImageFromGraphicScreen(); Description: Load a RasterImage object from the screen. Return: 0 if successed. 5 Valid Value can’t be null Valid Value >0 >0 - Valid Value can’t be null Valid Value can’t be null can’t be null Load with option There are a series of settings for loading, so you can specify the size, color, rotation, and resolution when load the input image as a RasterImage object, and you can also decide which area of the input image can be load, or if use the embedded color management. It’s very easy to use, just three steps needed: Create a LoadOption object Set the values of the LoadOption Pass the LoadOption to RasterImage’ constructor C# //Create a load option LoadOption option = new LoadOption(); //set the rotate angle option.RotateAngle = RotateAngle.Rotate90; //load a RasterImage object with load option from file path. RasterImage image = new RasterImage(@"F:\input.png",option); Related API(s) (RasterImage.cs): public RasterImage(string filePath, LoadOption loadOption); Description: Load a RasterImage object with load options. Parameters: Name Description Valid Value filePath input file path - loadOption a series settings for loading - public RasterImage(Btimap bmp, LoadOption loadOption); Description Load RasterImage object from bitmap with specified load option. Parameters: Name Description Valid Value bmp input bitmap can’ t be null loadOption a series settings for loading public RasterImage(Stream imageStream, LoadOption loadOption); Description: Load RasterImage object from stream with specified load option. Parameters: Name Description Valid Value imageStream input stream can’t be null loadOption a series settings for loading 6 public RasterImage(byte[] imageDataBytes, LoadOption loadOption); Description: Load RasterImage object from file data with specified load option. Parameters: Name Description Valid Value imageDataBytes the whole data of input file can’t be null loadOption a series settings for loading public RasterImage(IntPtr Hbitmap, LoadOption loadOption); Description: Load RasterImage object from Hbitmap with specified load option. Parameters: Name Description Valid Value Hbitmap the input HBitmap can’t be null loadOption a series settings for loading public RasterImage(IntPtr Hbitmap, IntPtr Hpalette, LoadOption loadOption); Description: Load RasterImage object from Hbitmap with specified palette and load option. Parameters: Name Description Valid Value Hbitmap the input Hbitmap can’t be null Hpalette input palette can’t be null loadOption a series settings for loading - 7 The values of load options Name CropRectangle Jpeg Load Option Description only load this specified area of input image as RasterImage object this is a class special for jpeg format. If smooth the input image Valid Value a rectangle, can’t be null true: smooth the jpeg file false:not true: load alpha channel false: not load LoadAlphaChannel If load the alpha channel, if set false, image’s transparency will be abandoned. LoadResizeAntiAlias if turned of Anti-alias true: turn on false: not MaintainAspectRatio if maintain the aspect ratio when resize the input image. true: maintain it false: not NegateColor if negate the color of input image true: negate the color false: not Resize set the target size for loading a rectangle, can’t be null RotateAngle set the rotate angle for loading choose from enum RotateAngle Rresolution set the resolution for loading >0 RenderIntent set the render intent for loading choose form enum RenderingIntents ThumbnailSize load the input image as thumbnail choose from enum ThumbnailSize UseEmbeddedColorManagem ent if use embedded color management. true: use it false: not use TargetProfileName use the specified color file, should set flag UseEmbeddedColorManagement to false - 8 Save Base Save Save RasterImage object to file path, stream and byte array. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //save it to the file path. image.Save(@"F:\output.png"); Related API(s) (RasterImage.cs): public void Save(string filePath); Description: Save RasterImage object to the given file path. Parameters: Name Description Valid Value filePath output file path - public byte[] SaveToBytes(ImageFormat format); Description: Save RasterImage object to byte array with specified format Parameters: Name Description Valid Value format output format choose from enum ImageFormat Return: Null if failed. public void SaveToStream(Stream stream, ImageFormat format); Description: Save RasterImage object to stream with specified format. Parameters: Name Description Valid Value stream output stream format output format choose from enum ImageFormat 9 Save With Option There are a series of settings for saving. Every output format has their own special save options. The table at the end of this section will explain these parameters in detail. To save RasterImage object with option just need three steps: Create a SaveOption object. Set the corresponding arguments Pass the object to the Save method. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a SaveOption object. SaveOption saveOption = new SaveOption(); //image format must be set saveOption.ImageFormat = RasterEdge.XImage.Raster.ImageFormat.PNG; //assign a filter to png saveOption.Png.Filter = PNGFilter.PAETH; //turn on the interlace saveOption.Png.Interlaced = true; //set compress level to 7. LEVEL0:least but fast, LEVEL9:best but slowest. saveOption.Png.Level = PNGCompressLevel.LEVEL9; //save it to the path. image.Save(@"F:\output.png", saveOption); Related API(s) (RasterImage.cs): public void Save(string filePath, SaveOption saveOption); Description: Save RasterImage object to the given path with specified save option. Parameter: Name Description Valid Value filePath output file path - saveOption a series of setting for saving - public byte[] SaveToBytes(SaveOption saveOption); Description: Save RasterImage object to byte array with specified save option. Parameters: Name Description Valid Value a series of setting for saving saveOption Return: Ouput file data. 10 public void SaveToStream(Stream stream, SaveOption saveOption); Description: Save RasterImage object to stream with specified save option. Parameters: Name Description Valid Value stream output stream saveOption a series of setting for saving Values of SaveOption objet: SaveOption Name Description Valid Value ImageFormat format for output file choose from enum ImageFormat ThumbnailSize the size of the output, set this option will save the RasterImage object as a thumbnail choose from enum ThumbnailSize UseEmbeddedColorManagement if use the management true: use false: not use RenderIntent set the render intent for output file choose from enum RenderIntent TargetProfileName the path of color profile - Tiff through this class to set tiff file save option - Bmp through this class to set bitmap file save option - Png through this class to set png file save option - Jpeg through this class to set jpeg file save option - Gif through this class to set gif file save option - Jp2 through this class to set jp2 file save option - 11 embedded color Values of SaveOption.Png: SaveOption.Png Name Description Valid Value Filter filtering the compression Interlaced if save the png file in interlaced format. Turn on it if there is a slow internet connection. true: save in interlaced format false: not Level compression level 0 to 9. 0:least but fast compression 9:best but slowest compression Strategy compression strategy 0 to 4. 0:default compression strategy 1:filtered compression strategy 2:Huffman_only compression strategy 3:RLE compression strategy 4:fixed ZLIB compression strategy. TransparencyColor pick a color form the image, and make it transparent - TransparencyMatch colors within this distance are considered equal. >0 data before choose from enum PNGFilter Values of SaveOption.Tif: SaveOption.Tiff Name Description Valid Value Compression set compression for output tif file choose from enum Compression ColorSpace set color space for output tif file choose from enum ColorSpace MultiPage if save to a multipage tif file, otherwise only the first page of the file will be saved. true: save in a multipage format false: just save the first page RowsPerStip set the number of rows per strip >0 Values of SaveOption.Bmp: SaveOption.Bmp Name Description Valid Value Compression set the compression for output bmp file choose from enum Compression 12 Values of SaveOption.Jpeg: SaveOption.Jpeg Name Description Valid Value Progressive if save jpeg file in progressed format. Turn on it if there is a slow internet connection. true: save format false: not OptimizedHuffman if use the optimized Huffman codes during encoding instead of using default Huffman codes true: use optimized Huffman codes false: not use SaveToGray if save the output jpeg file to gray true: save to gray false: not ColorSpace set the output jpeg file’s color space choose from ColorSpace Quality set compression level 0 to 99 default:75 SubSampleType specify sub sample type for jpeg encoder, use default compress quality 85 choose from enum SubSampleType SmoothImage if smooth the output jpeg file true: smooth it false: not in progressive enum Values of SaveOption.Gif: SaveOption.Gif Name Description Valid Value Interlaced if save gif file in interlaced format true: save it in interlaced format false: not TransparencyColor pick a color from color palette and define it as a transparent color - TransparencyMatch colors within this distance are considered equal >0 Version set output gif’s version note:87a not support animate delays nor transparent background colors choose from enum GIFVersion 13 Values of SaveOption.Jp2: SaveOption.Jp2 Name Description Valid Value SaveToGray if save the jp2 file to gray scale true: save to gray false: not PSNR set the Peak Signal to Noise Ratio(DB) >0 CompressRate set jp2 file’s compression rate 0 to 1 ProgressOrder set jp2 file’s progress order choose from enum ProgressOrder TileWidth set jp2 file’s tile width >0 TileHeigth set jp2 file’s tile height >0 Lossless if save jp2 file in lossless format true: save in lossless format false: not 14 Properties Color space Get color space of the input file: C# RasterImage image = new RasterImage(@"F:\input.png"); //get color space. ColorSpace colorSpace = image.ColorSpace; Change color space of the input file: C# RasterImage image = new RasterImage(@"F:\input.png"); //assign a processer to the image ImageProcess process = new ImageProcess(image); //change the image’s color space to gray process.TransformColorspace(ColorSpace.GRAY); //save it image.Save(@"F:\output.png"); Related API(s) (ImageProcess.cs): public void TransformColorspace(ColorSpace colorSpace); Description: Change the input image’s color space. Parameters: Name Description Valid Value colorSpace the target color place - public void TransformColorspace(ColorSpace colorSpace, int pageIndex); Description: Change the specified page’s color space. Parameters: Name Description Valid Value colorSpace the target color place pageIndex page index 0 to page count - 1 15 Compression Get compression type of the input file: C# //load an image RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess process = new ImageProcess(image); //get the image's compression type, default the first page. Compression compress = process.GetCompressionType(); Related API(s) (ImageProcess.cs): public Compression GetCompressionType(); Description: Get the input file’s compression type Return: The file’s compress type. public Compression GetCompressionType(int pageIndex); Description: Get the specified page’s compression type. Parameters: Name Description pageIndex page index Return: The page’s compression type. Change the compression type of the input file C# //load an image RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess process = new ImageProcess(image); //change the image's compression type to jpeg process.TransformCompression(Compression.JPEG); //save it image.Save(@"F:\output.jpg"); Related API(s) (ImageProcess.cs): 16 Valid Value 0 to page count - 1 public void TransformCompression(Compression compression); Description: Change all pages compression type of RasterImage object. Parameters: Name Description Valid Value compression the target compression type public void TransformCompression(Compression compression, int pageIndex); Description: Change the specified page’s compression type of RasterImage object. Parameters: Name Description Valid Value compression the target compression type pageIndex page index 0 to page count - 1 Resolution 17 Page count Get input file’s page count C# //load an image RasterImage image = new RasterImage(@"F:\input.gif"); //get input file's page count int pageCount = image.PageCount; 18 Page Width/Height Get input file’s width and height: C# //load an image RasterImage image = new RasterImage(@"F:\input.gif"); //default get the first page's width and height in pixel float width = image.Width; float height = image.Height; Get page width and height by page index: C# //load an image RasterImage image = new RasterImage(@"F:\input.gif"); //assign a processor to the input image ImageProcess process = new ImageProcess(image); //get page's width and height in pixel through page index //get the second page's width and height. int width = process.GetImageWidth(1); int height = process.GetImageHeight(1) Related API(s) (ImageProcess.cs): public int GetImageWidth(); Description: Get width of the first page. Return: -1 if failed. public int GetImageWidth(int pageIndex); Description: Get the specified page’s width through the page index. Parameters: Name Description pageIndex page index Return: -1 if failed. 19 Valid Value 0 to page count - 1 Clone Get a copy of the input file. C# //load an image RasterImage image = new RasterImage(@"F:\input.png"); //get a copy RasterImage copy = image.Clone(); 20 GetDiskSize Get the file size on disk. C# //load an image RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the input file. ImageProcess process = new ImageProcess(image); int diskSize = process.GetDiskSize(); Related API(s) (ImageProcess.cs): public int GetDiskSize (); Description: Get the file size on disk. Return: -1 if failed. public int GetDiskSize(int pageIndex); Description: Get the specified page’s size on disk. Parameters: Name Description pageIndex page index Return: -1 if failed. Valid Value 0 to page count - 1 21 Convert Convert To Bitmap There are two ways to convert RasterImage object to bitmap(s), two different ways get the same result. The first way is through the object itself, and the other is calling the static method of class ConvertHandler to complete the conversion. The first way: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //Convert the first page to bitmap Bitmap bmp = image.ToBitmap(); Related API(s) (RasterImage.cs): public Bitmap ToBitmap(); Description: Convert the first page of RasterImage object to bitmap. Return: Null if failed. public Bitmap ToBitmap(int pageIndex); Description: Convert the specified page of the RasterImage object to bitmap. Parameters: Name Description Valid Value pageIndex page index 0 to page count – 1 Return: Null if failed. public IntPtr ToHbitmap(); Description: Convert the first page of RasterImage object to HBitmap. Return: 0 if failed. public IntPtr ToHbitmap(int pageIndex); Description: Convert the sepcified page of RasterImage object to Hbitmap. Parameters: Name Description pageIndex page index Return: 22 Valid Value 0 to page count - 1 0 if failed. The second way is by calling static method of class ConvertHandler. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //convert the first page of the object to bitmap Bitmap bmp = ConvertHandler.ConvertToBitmap(image); Related API(s) (ConvertHandler.cs): public static Bitmap ConvertToBitmap(RasterImage image) Description: Convert the first page of RasterImage object to bitmap. Parameters: Name Description Valid Value image the input RasterImage object can’t be null Return: Null if failed. public static IntPtr ConvertToHBitmap(RasterImage image, int pageIndex) Description: Convert the specifed page of the RasterImage object to HBitmap. Parameters: Name Description Valid Value image the input RasterImage object can’t be null pageIndex page index 0 to page count - 1 Return: 0 if failed. public static IntPtr ConvertToHBitmap(RasterImage image) Description: Convert the first page of RasterImage object to HBitmap. Parameters: Name Description image the input RasterImage object Return: 0 if failed. 23 Valid Value can’t be null Convert To Other Format This section will explain how developers complete the conversion form one format to another. To complete the conversion, just call the static method ‘Convert’ through class ConvertHandler and set the input file path and output file path like code below: C# // This method only convert the first page, if the multipage conversion is needed please go to the section ‘Save’. ConvertHandler.Convert(@"F:\input.tif", @"F:\output.png"); Related API(s) (ConvertHandler.cs): public static int Convert(string inputFilePath, string outputFilePath); Descirption: Convert the input file to specified file format Parameters: Name Description Valid Value inputFilePath outputFilePath Return: -1 if failed. input file path - output file path - public static int Convert(Stream inputStream, string outputFilePath); Description: Convert the input stream to specified file format Parameters: Name Description Valid Value inputStream input file’s stream outputFilePath output file path Return: -1 if failed. public static int Convert(byte[] inputBytes, string outputFilePath); Description: Convert byte array to specified file format. Parameters: Name Description Valid Value inputBytes all data of input file can’t be null outputFilePath output file path Return: -1 if failed. public static Bitmap ConvertEMFtoBitmap(Stream emfStream, string path); public static Bitmap ConvertEMFtoBitmap(Stream emfStream, string path, int width, int 24 height); public static byte[] ConvertToBytes(string inputFilePath, string ext); Description: Convert input file to specified file format, and return it as byte array. Parameters: Name Description Valid Value inputFilePath input file path ext extension of target file e.g. .tif .bmp .png... Return: The data of output file. public static byte[] ConvertToBytes(Stream inputStream, string ext); Description: Convert input stream to specified format, and return it as byte array. Parameters: Name Description Valid Value inputStream input file’s stream ext extension of target file e.g. .tif .bmp .png... Return: The data of output file. public static byte[] ConvertToBytes(byte[] inputBytes, string ext); Description: Convert input file’s data to specified format, and return it as byte array. Parameters: Name Description Valid Value inputBytes the whole data of input file can’t be null ext extension of target file e.g. .tif .bmp .png... Return: The data of output file. public static int ConvertToIcon(string inputFilePath, string outputPath, Size targetSize); Description: Convert input file to icon with specified size. Parameters: Name Description Valid Value inputFilePath input file path outputPath output file path targetSize the size of output file max size: 256 * 256 Return: -1 if failed. public static int ConvertToIcon(string inputFilePath, string outputPath, Size targetSize, int colorsNum); 25 Description: Convert input file to icon with specified size and colors. Parameters: Name Description inputFilePath input file path outputPath output file path targetSize icon’s size colorsNum number of colors the output icon contain Return: -1 if failed. Valid Value max size: 256 * 256 >0 public static Stream ConvertToStream(string inputFilePath, string ext); Description: Convert input file to specified format and return it as a stream. Parameters: Name Description Valid Value inputFilePath input file path ext the extension of output file e.g. .tif .bmp .png... Return: The stream of output file. public static Stream ConvertToStream(Stream inputStream, string ext); Description: Convert input stream to specified format, and return it as a stream. Parameters: Name Description Valid Value inputStream input file’s stream ext the extension of output file e.g. .tif .bmp .png... Return : The stream of output file. public static Stream ConvertToStream(byte[] inputBytes, string ext); Description: Convert input file’s data array to specified format, and return it as a stream. Parameters: Name Description Valid Value inputBytes the whole data of input file can’t be null ext the extension of output file e.g. .tif .bmp .png... Return: The stream of output file. 26 Multipage Handle Combine document To complete the combination between two files, just follow the code below: C# //load first file. RasterImage image_1 = new RasterImage(@"F:\input_1.png"); //load second file. RasterImage image_2 = new RasterImage(@"F:\input_2.png"); //set the output file path. //ensure the output format support multipage, like .tif or .gif and so on. String savePath = @"F:\output.tif"; MultiPageImageProcess.CombineDocument(image_1, image_2, savePath); Related API(s) (MultiPageImageProcess.cs): public static void CombineDocument(RasterImage sourceImage, RasterImage combineWith, string savePath); Description: Combine two files into one. Parameters: Name Description Valid Value sourceImage the first file a valid RasterImage object combineWith the second file a valid RasterImage object savePath output file path - Split Document Split a multipage file into two, and save them to the given file path. C# RasterImage tifDoc = new RasterImage(@"F:\7Pages.tif"); //sepcify the first output file's save path String firstDocSavePath = @"F:\first.tif"; //specify the second output file's save path String secondDocSavePath = @"F:\second.tif"; //boundary = 4 //first output file is made up of first 5 pages, and rest of the pages will be second output file's page. MultiPageImageProcess.SplitDocument(tifDoc, 4, firstDocSavePath, secondDocSavePath); 27 Related API(s) (MultiPageImageProcess.cs): public static void SplitDocument(RasterImage sourceImage, int boundry, string firstDocSavePath, string lastDocSavePath); Description: Split the input mulipage file into two with specified index boundary and save them to the given file path. Parameters: Name Description Valid Value sourceImage the input multipage file a valid RasterImage object boundry page index boundary for split 0 to page count - 1 firstDocSavePath first output file save path - lastDoc second output file save path - Delete pages Remove pages from multipage document. C# //load a multipage tif file RasterImage tifDoc = new RasterImage(@"F:\7Pages.tif"); //specify which page to delete from the file. //actually the page1, page4, page5 will be removed from the tif file. int[] index = new int[] { 0, 3, 4 }; //set the output file path String savePath = @"F:\output.tif"; MultiPageImageProcess.DeletePages(tifDoc, index, savePath); Related API(s) (MultiPageImageProcess.cs): public static void DeletePages(RasterImage sourceImage, int[] pageIndedx, string savePath); Description: Remove specified pages from the input multipage document and save it to the given path. Parameters; Name sourceImage pageIndedx savePath Description Valid Value the input multipage document a valid RasterImage object page index of deleting page 0 to page count – 1 output file path - Extract pages Extract pages from the input multipage file. 28 C# //load a multipage tif file RasterImage tifDoc = new RasterImage(@"F:\7Pages.tif"); //specify which page will be extracted. int[] pageIdnex = new int[]{0,3,5}; //extract the pages and they will be returned as a RasterImage object. //actually, the page1, page4 and page6 will be extracted. RasterImage output = MultiPageImageProcess.ExtractPages(tifDoc, pageIdnex); Related API(s) (MultiPageImageProcess.cs): public static RasterImage ExtractPages(RasterImage sourceImage, int[] pageIndexs); Description: Extract specified pages from input file and returned them as a RasterImage object. Parameters: Name Description Valid Value sourceImage the input file a valid RasterImage object pageIndexs page index of extracting pages 0 to page count - 1 Return: RasterImage object made up of the extracted pages. Reorder pages Modify page orders of multipage file. C# //input a multipage tif file RasterImage tifDoc = new RasterImage(@"F:\4Pages.tif"); //specify the new order int[] newOrders = new int[] { 0, 2, 3, 1 }; //ensure the output format support multipage String savePath = @"F:\output.tif"; MultiPageImageProcess.ReOrderPages(tifDoc, newOrders, savePath); Related API(s) (MultiPageImageProcess.cs): public static void ReOrderPages(RasterImage sourceImage, int[] pageIndex, string savePath); Description: Modify the page orders of multipage file. Parameters: Name Description Valid Value sourceImage input multipage file a valid RasterImage object pageIndex new order of the output file 0 to pagecount - 1 savePath output file path - 29 Insert page C# //input a tif file RasterImage tifDoc = new RasterImage(@"F:\input.tif"); //load a RasterImage object as the new page. RasterImage newPage = new RasterImage(@"F:\newPage.png"); //specify the save path, ensure the format support multipage String savePath = @"F:\output.tif"; //if pageIndex is 0,the first page of the newPage will be the second page of the output file. MultiPageImageProcess.InsetPage(tifDoc, newPage, 0, savePath); Related API(s) (MultiPageImageProcess.cs): public static void InsetPage(RasterImage sourceImage, RasterImage newPage, int inserPageIndex, string savePath); Description: Insert an image or multipage document to the input file with specified location. Parameters: Name Description Valid Value sourceImage input file a valid RasterImage object newPage file for inserting a valid RasterImage object inserPageIndex location of the insert page 0 to sourceImage’s page count -1 savePath output file path - 30 Special Effect Adaptive blur C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess processor = new ImageProcess(image); //set Gaussian radius to 0, standard deviation of the Laplacian to 0.5 processor.AdaptiveBlurImage(0, 0.5); Related API(s)( ImageProcess.cs) public void AdaptiveBlurImage(double radius, double sigma); Description: Adaptive all pages of the RasterImage object Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels. default: 0 public void AdaptiveBlurImage(double radius, double sigma, int pageIndex); Descirption: Adaptive blur the specified page of the RasterImage object. Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher >=0 the value, the smoother the image sigma the standard deviation of the Laplacian, in pixels. default: 0 pageIndex page index 0 to page count - 1 Adaptive resize Fast resize image. When differs between target width/height and original width/height less than 50 pixles. 31 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess processor = new ImageProcess(image); //set Gaussian radius to 0, standard deviation of the Laplacian to 0.5 processor.AdaptiveBlurImage(0, 0.5); Related API(s)( ImageProcess.cs) public void AdaptiveResizeImage(int width, int height); Description: Fast resize all pages of the RasterImage object. Parameters: Name Description Valid Value width output file width >0 height output file height >0 public void AdaptiveResizeImage(int width, int height, int pageIndex); Description: Fast resize the specified page of the RasterImage object. Parameters: Name Description Valid Value width output file width >0 height output file height >0 pageIndex page index 0 to page count – 1 Adaptive threshold Threshold image. Evaulating the mean of a the specified region (by width and height),and using the mean as the thresholding value.In order to remove residual noise from the background, the threshold may be adjusted by subtracting a constant offset (default zero) from the mean to compute the threshold. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess processor = new ImageProcess(image); //Adaptive threshold the image. processor.AdaptiveThresholdImage(100, 100, 0); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) 32 public void AdaptiveThresholdImage(int width, int height, int offset); Description: Adaptive threshold all pages of the RasterImage object. Parameters: Name Description Valid Value width the specified region’s width >0 height the specified region’s height >0 offset for adjust the threshold value default: 0 public void AdaptiveThresholdImage(int width, int height, int offset, int pageIndex); Description: Adaptive threshold the specified page of RasterImage object. Parameters: Name Description Valid Value width the specified region’s width >0 height the specified region’s height >0 offset for adjust the threshold value default: 0 pageIndex page index 0 to page count - 1 Add noise Add specified type of noise to the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the image ImageProcess processor = new ImageProcess(image); //Adaptive Gaussian noise to the image. processor.AddNoiseImage(NoiseType.GaussianNoise); Related API(s)( ImageProcess.cs) public void AddNoiseImage(NoiseType noise); Description: Add specified type of noise on all pages of the RasterImage object. Parameters: Name Description Valid Value noise noise’s type choose from enum NoiseType public void AddNoiseImage(NoiseType noise, int pageIndex); Description: Add nosie on the specified page of the RasterImage object. Parameters: 33 Name Description Valid Value noise noise’s type choose from enum NoiseType pageIndex page index 0 to page count - 1 Auto level Scale the minimum and maximum color values to the full quantum range. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\1.png"); //assign a processor to the image ImageProcess processor = new ImageProcess(image); //Auto level the image processor.AntoLevelImage(); Related API(s)( ImageProcess.cs) public void AntoLevelImage(); Description: Auto level all pages of the RasterImage object. public void AntoLevelImage(int pageIndex); Description: Auto level the specified page of RasterImage object. Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Append Connect all pages of a multipage document from top to bottom( left to right) together. C# //load a multipage file as RasterImage object RasterImage image = new RasterImage(@"F:\input.tif"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //append all pages. RasterImage output = processor.AppendImages(1); output.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public RasterImage AppendImages(int direction); Description: 34 Connect a multipage file’s pages together. Parameters: Name Description Valid Value direction direction of the connection 0: left to right 1: top to bottom Return: Null if failed. C# //load a RasterImage object RasterImage tifDoc = new RasterImage(@"F:\input.tif"); //input a second image RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(tifDoc); //connect tifDoc's pages and image's pages all together. RasterImage output = processor.AppendImages(image, 1); output.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public RasterImage AppendImages(RasterImage raster, int direction); Description: Connect RasterImage object itself’s pages and the input object’s pages together. Parameters: Name Description Valid Value raster the input RasterImage object can’t be null direction direction of the connection 0: left to right 1: top to bottom Return: Null if failed public RasterImage AppendImages(RasterImage[] rasters, int direction) Description: Connect RasterImage object itself’s pages and the input objects’ pages together. Parameters: Name Description Valid Value rasters the input RasterImage objects can’t be null direction direction of the connection 0: left to right 1: top to bottom Return: Null if failed 35 Auto gamma Gamma correction, use the mean of the image to adjust the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //Gamma correction processor.AutoGammaImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void AutoGammaImage(); Description: Auto gamma correction for all pages of RasterImage object. public void AutoGammaImage(int pageIndex); Description: Auto gamma correction for specified page of RasterImage object. Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Auto orient Adjust the orientation of the image for best viewing. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //orientation correction processor.AutoOrientImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void AutoOrientImage(); Description: Adjust all pages’ orientation of RasterImage object for best viewing. public void AutoOrientImage(int pageIndex); Description: 36 Adjust the specified page’s orientation of RasterImage object for best viewing. Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Apply median filter to image Bilevel C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //bilevel processor.BilevelImage(0.5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void BilevelImage(double threshold); Description: Image’s bilevel all pages of the RasterImage object. Parameters: Name Description Valid Value threshold the color value below threshold will be set to 0 and above it will be set to 255 0 to 255 public void BilevelImage(double threshold, int pageIndex) Description: Image’s bilevel for the specified page of the RasterImage object. Parameters: Name Description Valid Value threshold the color value below threshold will be set 0 to 255 to 0 and above it will be set to 255 pageIndex page index 0 to page count - 1 Blueshift Simulate a scene at nighttime in the moonlight. 37 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //blue shift processor.BlueShiftImage(1.5f); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void BlueShiftImage(double factor); Description: Simulate a scene at nighttime in the moonlight for all pages of RasterImagae object Parameters: Name Description Valid Value factor blue shift factor default:1.5f public void BlueShiftImage(double factor, int pageIndex); Description: Simulate a scene at nighttime in the moonlight for the specified page of the RasterImage object.. Parameters: Name Description Valid Value factor blue shift factor default:1.5f pageIndex page index 0 to page count - 1 Blur Blur the image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //image blur set the radius to 0(default),set sigma to 1. processor.BlurImage(0,1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void BlurImage(double radius, double sigma); Description: Apply to all pages of RasterImage object. Parameters: 38 Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default:0 public void BlurImage(double radius, double sigma, int pageIndex) Description: Blur the specifed page of RasterImage object. Parameters: Name Description radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image sigma the standard deviation of the Laplacian, in pixels pageIndex page index Valid Value >=0 default: 0 0 to page count - 1 Buttonize darken or lighten the edge of the image to simulate a 3d botton effect C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //set the button edge's width and height to 10 pixels. processor.ButtonizeImage(10, 10, false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ButtonizeImage(int width, int height, bool flag); Description: A button effect for all the pages of the RasterImage object. Parameters: Name Description Valid Value width edge’s width >0 height edge’s height >0 flag lighten or darken the edge true: lighten false: darken public void ButtonizeImage(int width, int height, bool flag, int pageIndex) Description: A button effect for the specified page of the RasterImage object. Parameters: 39 Name Description Valid Value width edge’s width >0 height edge’s height >0 flag lighten or darken the edge true: lighten false: darken pageIndex page index 0 to page count - 1 CannyEdge Detect the edges in image, produces a very strong (binary) single pixel wide lines at all sharp edges, with very little noise interferance. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //detect the edge in image. processor.CannyEdgeImage(0,1,0.1,0.3); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void CannyEdgeImage(double radius, double sigma, double lowerPercent, double upperPercent) Description: Detect the edges in all pages of RasterImage object Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default:0 lowerPercent Percentage of edge pixels in the lower threshold 0.0 to 1.0 upperPercent Percentage of edge pixels in the upper threshold 0.0 to 1.0 public void CannyEdgeImage(double radius, double sigma, double lowerPercent, double upperPercent, int pageIndex); Description: Detect the edges in first page of the RasterImage object. Parameters: 40 Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default:0 lowerPercent Percentage of edge pixels in the lower threshold 0.0 to 1.0 upperPercent Percentage of edge pixels in the upper threshold 0.0 to 1.0 pageIndex page index 0 to page count - 1 Charcoa Simulate a charcoal sketch C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //simulate a charcoal sketch processor.CharcoaImage(0, 1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void CharcoaImage(double radius, double sigma); Description: Simulate all the pages of the RasterImage object to the charcoal sketch. Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default: 0 public void CharcoaImage(double radius, double sigma, int pageIndex); Description: Simulate the first page of the RasterImage object to the charcoal sketch. Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the >=0 smoother the image sigma the standard deviation of the Laplacian, in pixels default:0 pageIndex page index 0 to page count - 1 41 Change image’s contrast Enhances or reduce the intensity differences between the lighter and darker elements of the image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //reduce contrast of the image processor.ContrastImage(false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ContrastImage(bool sharpen) Description: Enhance or reduce the contrast of all the pages. Parameters: Name Description Valid Value sharpen enhance or reduce the contrast of the image false: reduce true: enhance public void ContrastImage(bool sharpen, int pageIndex); Description: Enhance or reduce the specified page of the RasterImage object. Parameters: Name Description enhance or reduce the contrast of the sharpen image page index pageIndex Change image’s brightness and contract Change the image’s brightness and contract. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.BrightnessContrastImage(50,50); image.Save(@"F:\output.png"); 42 Valid Value false: reduce true: enhance 0 to page count - 1 Related API(s)( ImageProcess.cs) public void BrightnessContrastImage(double brightbess, double contrast) Description: Apply to all pages of RasterImage object Parameters: Name Description Valid Value brightbess image’s brightness -100 to 100 0:no change <0:decrease >0:increase contrast image’s contrast -100 to 100 0:no change <0:decrease >0:increase public void BrightnessContrastImage(double brightbess, double contrast, int pageIndex) Description: Apply to the specified page of RasterImage object Parameters: Name Description Valid Value brightbess image’s brightness -100 to 100 0:no change <0:decrease >0:increase contrast image’s contrast -100 to 100 0:no change <0:decrease >0:increase pageIndex page index 0 to page count - 1 Chrominance sub sample Chroma Downsampling, Specify the SubSample Type For Jpeg Encoder, Use Default Compress Quality 85 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.jpg"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //set jpeg file's sub sample type processor.ChrominanceSubSample(SubSampleType.SubSample411); image.Save(@"F:\output.jpg") 43 Related API(s)( ImageProcess.cs) public void ChrominanceSubSample(SubSampleType subSampleType); Description: Jpeg file Chroma Downsampling. Parameters: Name Description Valid Value subSampleType type of sub sample choose from the enum SubSampleType. e.g. NoneSubSample = 4:4:4 SubSample422 = 4:2:2 Colorize Compare Compare two images. The different part will be marked to red. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); RasterImage compareWith = new RasterImage(@"F:\input_1.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //compare two images. processor.CompareImage(compareWith); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void CompareImage(RasterImage compareWith); Description: Compare all pages of RasterImage object with the input one. Parameters: Name Description Valid Value compareWith the image to compare with can’t be null public void CompareImage(RasterImage compareWith, int pageIndex); Description: Get the specified page of the RasterImage object, and compare with the input one. Parameters: Name Description Valid Value compareWith the image to compare with can’t be null pageIndex page index 0 to page count - 1 44 Cropping Image cropping C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //set the cropping area. Rectangle cropArea = new Rectangle(0, 0, 50, 50); processor.CropImage(cropArea); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void CropImage(Rectangle rect); Description: Crop all pages of RasterImage object with the specified rectangle. Parameters: Name Description Valid Value rect the cropping area can’t be null public void CropImage(Rectangle rect, int pageindex); Description: Crop the specified page of RasterImage object with the specified rectangle. Parameters: Name Description Valid Value rect the cropping area can’t be null pageindex page index 0 to page count - 1 Cycle colormap Displace image colormap by amount. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //set the crop area. processor.CycleColormapImage(1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) 45 public void CycleColormapImage(int amount); Description: Displace all pages’ colormap of RasterImage object with specifed amount. Parameters: Name Description Valid Value amount the number of positions each >0 colormap entry is shifted public void CycleColormapImage(int amount, int pageIndex); Description: Displace the sepcified page’s colormap of RasterImage object with given amount. Parameters: Name Description Valid Value amount the number of positions each >0 colormap entry is shifted pageIndex page index 0 to page count - 1 Decipher Decipher image with the pass phrase, only be used in concert with API EnCipherImage. That is you should use the same phrase to decipher and encipher it. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //Encipher the image with the String processor.DecipherImage ("Hello"); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void DecipherImage(string passphrase); Description: Decipher all pages of RasterImage object with the pass phrase. Parameters: Name Description Valid Value passphrase a string to decipher the image must be the same one when encipher the image. public void DecipherImage(string passphrase, int pageIndex); Description: Decipher the specified page of RasterImage object with the pass phrase. Parameters: 46 Name Description Valid Value passphrase a string to decipher the image must be the same one when encipher the image. pageIndex page index 0 to page count - 1 Deskew Straighten the image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //deskew the image, recommend value:0.4 processor.DeskewImage(0.4); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void DeskewImage(double threshold); Description: Deskew all pages of RasterImage object with specified threshold. Parameters: Name Description Valid Value threshold threshold value recommend value: 0.4 public void DeskewImage(double threshold, int pageIndex); Description: Deskew the specified page of RasterImage object with specified threshold. Parameters: Name Description Valid Value threshold threshold value recommend value: 0.4 pageIndex page index 0 to page count - 1 Distort Effect3D All these is needed are two pictures are separated by a small horizontal distance, roughly equal to the distance between our eyes. Changing a camera’s location is easy, you just take a picture, move the camera and take another picture. 47 C# //load a RasterImage object RasterImage left = new RasterImage(@"F:\left.png"); RasterImage right = new RasterImage(@"F:\right.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(left); processor.Effect3D(right); left.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void Effect3D(RasterImage rightImage); Description: Produce three-dimensional image. Parameters: Name Description Valid Value rightImage the same image with RasterImage object’s page, just has a small horizontal displacement. can’t be null public void Effect3D(RasterImage rightImage, int pageIndex); Description: Produce three-dimensional image with the specified page of the RasterImage object Parameters: Name Description Valid Value rightImage the same image with RasterImage object’s specified can’t be null page, just has a small horizontal displacement. pageIndex page index 0 to page count - 1 Emboss Hilight edges within the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.EmbossImage(0,1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void EmbossImage(double radius, double sigma); Description: Hilight edges within all the pages of RasterImage object. Parameters: 48 Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default: 0 public void EmbossImage(double radius, double sigma, int pageIndex); Description: Hilight edges within the specified page of RasterImage object. Parameters: Name Description radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image sigma the standard deviation of the Laplacian, in pixels pageIndex page index Valid Value >=0 default: 0 0 to page count - 1 EnCipher Encipher the image with phrase C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //encipher the image with string “Hello” processor.EnCipherImage("Hello"); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void EnCipherImage(string passphrase); Description: Encipher all the pages of RasterImage object with the same phrase Parameters: Name Description Valid Value passphrase the string to encipher the image can’t be null public void EnCipherImage(string passphrase, int pageIndex); Description: Encipher the specified page of RasterImage object with the given phrase Parameters: Name Description Valid Value 49 passphrase the string to encipher the image can’t be null pageIndex page index 0 to page count - 1 Enhance use a digital filter to minimize the noise C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.EnhanceImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void EnhanceImage(); Description: Enhance all the pages of RasterImage object. public void EnhanceImage(int pageIndex); Description: Enhance the specified page of RasterImage object. Parameters: Name Description Valid Value pageIndex page index 0 to page count -1 Equalize Adjusts contrast without changing the brightness range of the image, thus more detail can be seen in areas that have very similar value. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.EqualizeImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void EqualizeImage(); Description: Equalize all the pages of RasterImage object. 50 public void EqualizeImage(int pageIndex); Description: Equalize the specified page of RasterImage object Parameters: Name Description pageIndex page index Valid Value 0 to page count -1 Erase EraseImage Image to Current BackGround Color, but you should set the property "BackgroundColor", otherwise the image will be erase to white C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.EraseImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void EraseImage(); Description: Erase all pages of RasterImage object to background color. public void EraseImage(int pageIndex); Description: Erase the specified page of RasterImage object to background color. Parameters: Name Description Valid Value pageIndex page index 0 to page count -1 Fill with opaque color Detect color which matches the "newColor" and replace it with "newColor" 51 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.FillWithopaqueColor(0,0,Color.FromArgb(0,255,0,0),1,false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void FillWithopaqueColor(int xOffset, int yOffset, Color newColor, double distance, bool invert); Description: Replace the color within all pages of RasterImage object. Parameters: Name Description Valid Value xOffset x coordinate of start location >=0 && <= page’s width yOffset y coordinate of start location >=0 && <= page’s height newColor the specified color can’t be null distance colors within this distance are considered equal. >=0 invert replace color match the given color or not match. true:replace color which not matched the ‘newColor’ with ‘newColor’ false:replace color which matches the ‘newColor’ with ‘newColor’ public void FillWithopaqueColor(int xOffset, int yOffset, Color newColor, double distance, int pageIndex, bool invert); Description: Replace the color within the specified page of RasterImage object. Parameters: Name Description Valid Value xOffset x coordinate of start location >=0 && <= page’s width yOffset y coordinate of start location >=0 && <= page’s height newColor the specified color can’t be null distance colors within this distance are >=0 considered equal. pageIndex page index 0 to page count - 1 invert replace color match the given true:replace color which not matched the color or not match. ‘newColor’ with ‘newColor’ false:replace color which matches the ‘newColor’ with ‘newColor’ 52 Fill with transparent color Detect color which matches the "newColor" and replace it with transparent color. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.FillWithTransparentColor(0, 0, Color.FromArgb(0, 255, 0, 0), 1, false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void FillWithTransparentColor(int xOffset, int yOffset, Color newColor, double distance, bool invert) Description: Replace all pages’ color. Parameters: Name Description Valid Value xOffset x coordinate of start location >=0 && <=page’s width yOffset y coordinate of start location >=0 && <=page’s height newColor the specified color can’t be null distance colors within this distance are considered equal. >=0 invert replace the color matches the given color or not matches. true: replace color which not matches the given color. false: replace color which matches the given color public void FillWithTransparentColor(int xOffset, int yOffset, Color newColor, double distance, int pageIndex, bool invert) Replace the specified pages’ color. Parameters: Name Description Valid Value xOffset x coordinate of start location >=0 && <=page’s width yOffset y coordinate of start location >=0 && <=page’s height newColor the specified color can’t be null distance colors within this distance are >=0 considered equal. pageIndex page index 0 to page count - 1 invert replace the color matches the true: replace color which not matches the given color or not matches. given color. false: replace color which matches the given color 53 Flip Get the image upside down. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.FlipImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void FlipImage(); Description: Upsidedown all pages of RasterImage object. public void FlipImage(int pageIndex); Description: Upsidedown the specified page of RasterImage object. Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Flop Mirror the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.FlopImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void FlopImage(); Description: Mirror all pages of RasterImage object. public void FlopImage(int pageIndex); Description: Mirror the specified page of RasterImage object. Parameters: 54 Name Description Valid Value pageIndex page index 0 to page count - 1 Frame Add decorative frame around image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.FrameImage(10,10,0,10); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void FrameImage(int width, int height, int innerBevel, int outerBevel); Description: Decorate all pages of RasterImage object. Parameters: Name Description Valid Value width frame’s width >0 height frame’s height >0 innerBevel frame’s inner bevel >=0 outerBevel frame’s outer bevel >=0 public void FrameImage(int width, int height, int innerBevel, int outerBevel, int pageIndex); Description: Decorate the specified page of RasterImage object. Parameters: Name Description Valid Value width frame’s width >0 height frame’s height >0 innerBevel frame’s inner bevel >=0 outerBevel frame’s outer bevel >=0 pageIndex page index 0 to page count - 1 Gamma Gamma correction: adjust color difference displayed on differnt display monitor 55 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.GammaImage(0.5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void GammaImage(double gamma); Description: Corrcet all pages of RasterImage object. Parameters: Name Description Valid Value gamma gamma factor <1.0: darken the image >=1.0: lighten the image public void GammaImage(double gamma, int pageIndex); Description: Corrcet the specified of RasterImage object. Parameters: Name Description Valid Value gamma gamma factor <1.0: darken the image >=1.0: lighten the image pageIndex page index 0 to page count - 1 Gaussian blur Blur the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.GaussianBlurImage(3,1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void GaussianBlurImage(double radius, double gamma); Description: Blur all pages of RasterImage object. Parameters: 56 Name Description Valid Value radius number of neighbor pixels to be included in the convolution mask the standard is 3 gamma standard deviation of the gaussian bell curve <1.0: darken the image >=1.0: lighten the image public void GaussianBlurImage(double radius, double gamma, int pageIndex); Description: Blur the specified page of RasterImage object. Parameters: Name Description Valid Value radius number of neighbor pixels to the standard is 3 be included in the convolution mask gamma standard deviation of the <1.0: darken the image gaussian bell curve >=1.0: lighten the image pageIndex page index 0 to page index Grayscale Convert image to gray scale. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.GrayscaleImage(PixelIntensityMethod.AveragePixelIntensityMethod); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void GrayscaleImage(PixelIntensityMethod method); Description: Convert all pages of RasterImage object to gray scale. Parameters: Name Description Valid Value method the method to conver it choose from the enum PixelIntensityMethod public void GrayscaleImage(PixelIntensityMethod method, int pageIndex); Description: Convert the specified page of RasterImage object to gray scale. Parameters: 57 Name Description Valid Value method the method to conver it choose from the enum PixelIntensityMethod pageIndex page index 0 to page count - 1 HoughLine Implode Simulate a implode effect. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ImplodeImage(0.5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ImplodeImage(double factor); Description: Apply to all the page of RasterImage object. Parameters: Name Description Valid Value factor the implode factor >=0 public void ImplodeImage(double factor, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description factor the implode factor pageIndex page index 58 Valid Value >=0 0 to page count - 1 JPEG smoothing Smooth the JPEG file. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.jpg"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.JPEGSmoothing(); image.Save(@"F:\output.jpg"); Related API(s)( ImageProcess.cs) public void JPEGSmoothing(); Kuwahara Apply an edge preserving noise filter to the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.KuwaharaImage(0,1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void KuwaharaImage(double radius, double sigma); Description: Apply an edge preserving noise filter to all pages of the RasterImage object Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default: 0 public void KuwaharaImage(double radius, double sigma, int pageIndex); Description: Apply an edge preserving noise filter to the specified page of RasterImage object Parameters: 59 Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >=0 sigma the standard deviation of the Laplacian, in pixels default: 0 pageIndex page index 0 to page count - 1 Layer merge Merge multi layers into one with specified merge method. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); RasterImage inputLayer = new RasterImage(@"F:\input_1.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.LayerMerge(inputLayer, LayerMergeMethod.CompositeLayer); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void LayerMerge(RasterImage layer, LayerMergeMethod method); Description: All pages of RasterImage object will merge with the input layer. Parameters: Name Description Valid Value layer a RasterImage object can not be null method merge method choose from the eum LayerMergeMethod public void LayerMerge(RasterImage[] layers, LayerMergeMethod method); Description: Specify a page of RasterImage object to merge with the input layers Parameters: Name Description Valid Value layers RasterImage objects can not be null method merge method choose from the eum LayerMergeMethod 60 Level Adjust the levels of the image by scaling the colors falling between specified white and black points to the full available quantum range C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.LevelImage(0.5, 0.5,5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void LevelImage(double blackPoint, double whitePoint, double gamma); Description: Level all pages of RasterImage object. Parameters: Name Description Valid Value blackPoint black-out at most blackPoint % pixels 0 to 1 whitePoint white-out at most 100% minus whitePoint % pixels. 0 to 1 gamma gamma correction <1.0: darken the image >=1.0: lighten the image public void LevelImage(double blackPoint, double whitePoint, double gamma, int pageIndex); Description: Level the spciefied page of RasterImage object. Parameters: Name Description Valid Value blackPoint black-out at most blackPoint % pixels 0 to 1 whitePoint white-out at most 100% minus whitePoint % 0 to 1 pixels. gamma gamma correction <1.0: darken the image >=1.0: lighten the image pageIndex page index 0 to page count - 1 Linear stretch Work by counting pixels from the ends of the histogram to get the graylevels to stretch. Discards any pixels below the black point and above the white point, and levels the remaining pixels. 61 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.LinearStretchImage(0.5, 0.5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void LinearStretchImage(double blackPoint, double whitePoint); Description: Liner stretch all pages of RasterImage object. Parameters: Name Description Valid Value blackPoint black-out at most blackPoint % pixels 0 to 1 whitePoint white-out at most 100% minus whitePoint % pixels. 0 to 1 public void LinearStretchImage(double blackPoint, double whitePoint, int pageIndex); Description: Liner stretch the specified page of RasterImage object. Parameters: Name Description Valid Value blackPoint black-out at most blackPoint % pixels 0 to 1 whitePoint white-out at most 100% minus whitePoint % pixels. 0 to 1 pageIndex page index 0 to page count - 1 Magnify Double image size C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.MagnifyImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void MagnifyImage(); public void MagnifyImage(int pageIndex); Description: Double the specified page’s size of RasterImage object. Parameters: 62 Name Description Valid Value pageIndex page index 0 to page count - 1 Merge Merge the two images into one with specified merge method. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); RasterImage child = new RasterImage(@"F:\child.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.MergeImage(child, MergeType.Atop, 0, 0); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void MergeImage(RasterImage childImage, MergeType mergeType, int xOffset, int yOffset); Description: All pages of RasterImage object will merge with the input one. Parameters: Name Description Valid Value childImage the image to merge with can’t be null mergeType the merge method choose from the enum MergeType xOffset x coordinate on the background image >=0 && <= page’s width yOffset y coordinate on the background image >=0 && <=page’s height Modulate Modulate percent hue, saturation, and brightness of an image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ModulateImage(150,120,180); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ModulateImage(double brightness, double saturation, double hue); Description: 63 Apply to all pages of RasterImage object. Parameters: Name Description Valid Value brightness brightness of the image 0 to 200 100 for no change saturation saturation of the image 0 to 200 100 for no change hue hue of the image 0 to 200 100 for no change public void ModulateImage(double brightness, double saturation, double hue, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value brightness brightness of the image 0 to 200 100 for no change saturation saturation of the image 0 to 200 100 for no change hue hue of the image 0 to 200 100 for no change pageIndex page index 0 to page count -1 Monochrome Convert the image to bitonal(black & white) C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.MonochromeImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void MonochromeImage(); Description: Convert all pages of RasterImage object to bitnal. public void MonochromeImage(int pageIndex); Description: 64 Convert the specified page of RasterImage object to bitnal. Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Morphology Motion blur Motion blur the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.MotionBlurImage(0,1,0); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void MotionBlurImage(double radius, double sigma, double angle); Description: Motion blur all pages of RasterImage object. Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels.the higher the value, the smoother the image. >=0 sigma standard deviation of the Laplacian, in pixels. default:1 angle object appears to be comming from 0: from right public void MotionBlurImage(double radius, double sigma, double angle, int pageIndex); Description: Motion blur the specified page of RasterImage object. Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels.the higher the >=0 value, the smoother the image. sigma standard deviation of the Laplacian, in pixels. default:1 angle object appears to be comming from 0: from right pageIndex page index 0 to page count - 1 65 Negate Replace image's pixels with its complementary color (white becomes black, yellow becomes blue, etc.) C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.NegateImage(false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void NegateImage(bool grayScale); Description: Negate all page of RasterImage object. Parameters: Name Description Valid Value grayScale if only negate gray scale values in image true: yes false: no public void NegateImage(bool grayScale, int pageIndex); Description: Negate the specified page of RasterImage object. Parameters: Name Description grayScale if only negate gray scale values in image pageIndex page index Oil paint Simulate an oil painting C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.OilPaintImage(2); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) 66 Valid Value true: yes false: no 0 to page count - 1 public void OilPaintImage(double radius); Description: Apply to all pages of RasterImage object. Parameters: Name Description radius radius of the circular neighborhood public void OilPaintImage(double radius, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description radius radius of the circular neighborhood pageIndex page index Valid Value >=0 Valid Value >=0 0 to page count -1 Optimized huffman With this method you can get a smaller jpeg file C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.jpg"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.OptimizedHuffman(true); image.Save(@"F:\output.jpg"); Related API(s)( ImageProcess.cs) public void OptimizedHuffman(bool useOptimizeHuffmanCode); Parameters: Name Description Valid Value useOptimizeHuffmanCode if use optimized Huffman code true: use false: not use Perceptible Posterize Simulate a poster effect 67 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.PosterizeImage(3,false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void PosterizeImage(int levels, bool dither); Description: Apply to all pages of RasterImage object. Parameters: Name Description Valid Value levels number of color levels allowed in each channel >=0 dither whether to use dither method true: use false: not use public void PosterizeImage(int levels, bool dither, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value levels number of color levels allowed in each channel >=0 dither whether to use dither method true: use false: not use pageIndex page index 0 to page count - 1 Quantize image’s color Reduce color number to the specified number. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.QuantizeColor(256,DitherMethod.NoDitherMethod,ColorSpace.RGB); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void QuantizeColor(int num, DitherMethod ditherMehod, ColorSpace colorspace); Description: Quantize all pages of RasterImage object. 68 Parameters: Name num ditherMehod colorspace Description Valid Value target number of colors >=0 dither method to quantize the image choose from the enum DitherMethod target color space choose from enum ColorSpace public void QuantizeColor(int num, DitherMethod ditherMehod, ColorSpace colorspace, int pageIndex); Description: Quantize the specified page of RasterImage object. Parameters: Name Description Valid Value num target number of colors >=0 ditherMehod dither method to quantize the choose from the enum image DitherMethod colorspace target color space choose from enum ColorSpace pageIndex page index 0 to page count -1 Reduce noise Remove alpha channel Remove image’s alpha channel C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.RemoveAlphaChannel(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void RemoveAlphaChannel(); Description: Remove all pages’ alpha channel of RasterImage object. public void RemoveAlphaChannel(int pageIndex); Description: Remove the specified page’s alpha channel of RasterImage object. Parameters: 69 Name Description Valid Value pageIndex page index 0 to page count -1 Replace color Replace the "old color" with "new color" C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); //replace color white with color green. processor.ReplaceColor(Color.White,Color.Green,3,false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ReplaceColor(Color oldColor, Color newColor, double distance, bool invert); Description: Apply to all pages of RasterImage object. Parameters: Name Description Valid Value oldColor the color will be replaced can’t be null newColor the colro to replace the ‘oldColor’ can’t be null distance colors within this distance are considered equal. >=0 invert use ‘newColor’ to replace the ‘oldColor’ or replace colors are not ‘oldColor’. true: replace colors not mathces the ‘oldColor’ false: replace the ‘oldColor’ public void ReplaceColor(Color oldColor, Color newColor, double distance, int pageIndex, bool invert); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value oldColor the color will be replaced can’t be null newColor the colro to replace the ‘oldColor’ can’t be null distance colors within this distance are considered >=0 equal. pageIndex page index 0 to page count - 1 invert use ‘newColor’ to replace the ‘oldColor’ or true: replace colors not replace colors are not ‘oldColor’. mathces the ‘oldColor’ false: replace the ‘oldColor’ 70 Resample Resize image without color mixing, much faster than Resize API C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ResampleImage(new Size(500, 500),false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ResampleImage(Size size, bool aspectRatio); Description: Resize all pages of RasterImage object to the specified size. Parameters: Name Description Valid Value size the target size can’t be null aspectRatio if maintain the aspect ratio true: preserve the aspect ratio false: not perserve public void ResampleImage(Size size, bool aspectRatio, int pageIndex); Description: Resize the specified page of RasterImage object to the target size. Parameters: Name Description Valid Value size the target size can’t be null aspectRatio if maintain the aspect ratio true: preserve the aspect ratio false: not perserve pageIndex page index 0 to page count -1 ReSize Resize image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ReSizeImage(new Size(500, 500), InterpolateMethod.Average16InterpolatePixel); image.Save(@"F:\output.png"); 71 Related API(s)( ImageProcess.cs) public void ReSizeImage(Size size, InterpolateMethod polateMethod); Description: Resize all pages of RasterImage object to the specified size. Parameters: Name Description Valid Value size the target size can’t be null polateMethod interpolate method to resize the image choose from the enum InterpolateMethod public void ReSizeImage(Size size, InterpolateMethod polateMethod, int pageIndex); Description: Resize the specified page of RasterImage object to the target size. Parameters: Name Description Valid Value size the target size can’t be null polateMethod interpolate method to resize choose from the enum the image InterpolateMethod pageIndex page index 0 to page count - 1 Resize image to thumbnail size Fast thumbnail generation C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ResizeImageToThumbnailSize(new Size(256,256),false); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ResizeImageToThumbnailSize(Size size, bool aspectRatio); Description: Resize all the pages of RasterImage object to thumbnail size. Parameters: Name Description Valid Value size the target size can’t be null aspectRatio if maintain the aspect ratio true: preserve the aspect ratio false: not preserve public void ResizeImageToThumbnailSize(Size size, bool aspectRatio, int pageIndex); Description: 72 Resize the specified page of RasterImage object to thumbnail size. Parameters: Name Description Valid Value size the target size can’t be null aspectRatio if maintain the aspect ratio true: preserve the aspect ratio false: not preserve pageIndex page index 0 to page count - 1 Roll Roll the image with specified rows in the vertical direction or columns in the horizontal direction C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.RollImage(10,10); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void RollImage(int xoffset, int yoffset); Description: Aplly to all pages of RasterImage object. Parameters: Name Description Valid Value xoffset colunms to rolll in the horizonal direction >=0 yoffset rows to rolll in the horizonal direction >=0 public void RollImage(int xoffset, int yoffset, int pageIndex); Description: Aplly to the specified page of RasterImage object. Parameters: Name Description xoffset colunms to rolll in the horizonal direction yoffset rows to rolll in the vertical direction pageIndex page index Rotate Rotate image by specified number of degrees. 73 Valid Value >=0 >=0 0 to page count - 1 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.RotateImage(30); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void RotateImage(double degree); Description: Rotate all pages of RasterImage object to the specified degree. Parameters: Name Description Valid Value degree rotate degree >=0 public void RotateImage(double degree, int pageIndex); Description: Rotate the specified page of RasterImage object to the target degree. Parameters: Name Description Valid Value degree rotate degree >=0 pageIndex page index 0 to page count - 1 Rotational blur Rotational blur C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.RotationalBlurImage(3); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void RotationalBlurImage(double angle); Description: Apply to all pages of RasterImage object. Parameters: Name Description Valid Value angle the target angle >=0 74 public void RotationalBlurImage(double angle, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value angle the target angle >=0 pageIndex page index 0 to page count -1 Segment Selective blur Blur Image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SelectiveBlur(0,1,220); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SelectiveBlur(double radius, double sigma, double threshold); Description: Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels.The higher the value, the smoother the image. >=0 sigma standard deviation of the Gaussian, in pixels default:0 threshold pixles less or equal to the threshold will be blured,expressed as percentage >=0 public void SelectiveBlur(double radius, double sigma, double threshold, int pageIndex); Description: Parameters: 75 Name Description Valid Value radius radius of the Gaussian, in pixels.The higher the value, the smoother the image. >=0 sigma standard deviation of the Gaussian, in pixels default:0 threshold pixles less or equal to the threshold will be blured,expressed as percentage >=0 pageIndex page index 0 to page count -1 Separate Separate a specified channel from the image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SeparateImage(ChannelType.RedChannel); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SeparateImage(ChannelType channel); Description: Aplly to all pages of RasterImage object. Parameters: Name Description Valid Value channel the channel will be extract out choose from the enum ChannelType public void SeparateImage(ChannelType channel, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value channel the channel will be extract out choose from the enum ChannelType pageIndex page index 0 to page count - 1 Sepia tone Make images like achieved in a photo darkroom 76 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SepiaToneImage(0.8); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SepiaToneImage(double threshold); Description: Aplly to all pages of RasterImage object. Parameters: Name Description Valid Value threshold the sepia tone factor 0 to 1 public void SepiaToneImage(double threshold, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: Name Description Valid Value threshold the sepia tone factor 0 to 1 pageIndex page index 0 to page count -1 Set delay time Set gif file’s delay time C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.gif"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SetDelayTime(5); image.Save(@"F:\output.gif"); Related API(s)( ImageProcess.cs) public void SetDelayTime(int delay); Parameters: Name Description Valid Value delay delay time in milliseconds >=0 77 Set interlace Set interlace for image. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SetImageInterlace(ImageProcess.InterlaceType.PNG); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SetImageInterlace(ImageProcess.InterlaceType interlace); Parameters: Name Description Valid Value interlace interlace type choose from the enum InterlaceType Shade Shadow Sharpen Sharpen pixels in image C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SharpenImage(0, 1); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SharpenImage(double radius, double sigma); Description: Sharpen all pages of RasterImage object Parameters: 78 Name Description Valid Value radius radius of the Gaussian, in pixels. The higher the value, the smoother the image >=0 sigma standard deviation of the Laplacian, in pixels default:1 public void SharpenImage(double radius, double sigma, int pageIndex); Description: Sharpen the specified page of RasterImage object Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels. The higher the >=0 value, the smoother the image sigma standard deviation of the Laplacian, in pixels default:1 pageIndex page index 0 to page count - 1 Shear Create parallelogram by sliding image by X or Y axis C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ShearImage(30,30); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ShearImage(double xShearAngle, double yShearAngle); Description: Shear all pages of RasterImage object Parameters: Name Description Valid Value xShearAngle the number of degrees to shear the image,relative to the X axis >=0 yShearAngle the number of degrees to shear the image,relative to the Y axis >=0 public void ShearImage(double xShearAngle, double yShearAngle, int pageIndex); Description: Shear the specified page of RasterImage object Parameters: 79 Name Description Valid Value xShearAngle the number of degrees to shear the image,relative to the X axis >=0 yShearAngle the number of degrees to shear the image,relative to the Y axis >=0 pageIndex page index 0 to page count - 2 Sketch Simulates a pencil sketch C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SketchImage(0,1,20); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SketchImage(double radius, double sigma, double angle); Description: Sketch all pages of RasterImage object. Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels.The higher the value, the soomther the image >=0 sigma tandard deviation of the Laplacian, in pixels default:1 angle the sktech angle >=0 public void SketchImage(double radius, double sigma, double angle, int pageIndex); Description: Sketch the specified page of RasterImage object. Parameters: Name Description Valid Value radius radius of the Gaussian, in pixels.The higher the >=0 value, the soomther the image sigma tandard deviation of the Laplacian, in pixels default:1 angle the sktech angle >=0 pageIndex page index 0 to page count -1 80 Solarize Negate the image's pixels which above the threshold. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SolarizeImage(0.5); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SolarizeImage(double factor); Description: Solorize all pages of RasterImage object. Parameters: Name Description Valid Value factor the threshold value 0 to 255 public void SolarizeImage(double factor, int pageIndex); Description: Solorize a specified page of RasterImage object. Parameters: Name Description factor the threshold value pageIndex page index Valid Value 0 to 255 0 to 255 Splice Splice the image with the specified rectangle, the rectagle's background can be set with: process.Background C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SpliceImage(10,10,20,20); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SpliceImage(int xoffset, int yoffset, int width, int height); Description: 81 Splice all pages of RasterImage object. Parameters: Name Description Valid Value xoffset start x of rectangle >=0 && <= page’s width yoffset start y of rectangle >=0 && <= page’s height width rectangle’s width >=0 && <= page’s width height rectangle’s height >=0 && <= page’s height public void SpliceImage(int xoffset, int yoffset, int width, int height, int pageIndex); Description: Splice the specified page of RasterImage object. Parameters: Name Description Valid Value xoffset start x of rectangle >=0 && <= page’s width yoffset start y of rectangle >=0 && <= page’s height width rectangle’s width >=0 && <= page’s width height rectangle’s height >=0 && <= page’s height pageIndex page index 0 to page count - 1 Spread Displace the image's pixles randomly by the specified amount C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SpreadImage(2); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SpreadImage(int amount); Description: Spread all pages of RasterImage object. Parameters: Name Description Valid Value amount shift value >=0 public void SpreadImage(int amount, int pageIndex); Description: Spread the specified page of RasterImage object. Parameters: 82 Name Description Valid Value amount shift value >=0 pageIndex page index 0 to page count -1 Swirl Rotate the pixels in image with specified degree. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.SwirlImage(20); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void SwirlImage(double degree); Description: Swill all pages of RasterImage object. Parameters: Name Description Valid Value degree rotate degree >0 public void SwirlImage(double degree, int pageIndex); Description: Swill the specified page of RasterImage object. Parameters: Name Description degree rotate degree pageIndex page index Valid Value >0 0 to page count -1 Texture Modifies the image(texture) to appear in tiles based on the original image's backgrround C# RasterImage background = new RasterImage(500, 500, Color.Red); //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(background); processor.TextureImage(image); background.Save(@"F:\output.png"); 83 Related API(s)( ImageProcess.cs) public void TextureImage(RasterImage texture); Description: Put the texture on all pages of the RasterImage object. Parameters: Name Description Valid Value texture the texture on background image can’t be null public void TextureImage(RasterImage texture, int pageIndex); Description: Parameters: Put the texture on the specified page of the RasterImage object. Name Description Valid Value texture the texture on background image can’t be null pageIndex page index 0 to page count -1 Threshold If the channel value is less or equal to the given value will be set to 0 or will be set to max. This operation will be applied to every channel. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.ThresholdImage(120); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void ThresholdImage(int threshold); Description: Apply to all pages of RasterImage object. Parameters: Name Description Valid Value threshold threshold value 0 to 255 public void ThresholdImage(int threshold, int pageIndex); Description: Apply to the specified page of RasterImage object. Parameters: 84 Name Description Valid Value threshold threshold value 0 to 255 pageIndex page index 0 to page count -1 Transform color space Change image’s color space C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformColorspace(ColorSpace.GRAY); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformColorspace(ColorSpace colorSpace); Description: Parameters: Name Description Valid Value colorSpace target color space choose from the enum ColorSpace public void TransformColorspace(ColorSpace colorSpace, int pageIndex); Description: Parameters: Name Description Valid Value colorSpace target color space choose from the enum ColorSpace pageIndex page index 0 to page count -1 Transform compression Change image’ s compression type C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.tif"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformCompression(Compression.Group4); image.Save(@"F:\output.tif"); 85 Related API(s)( ImageProcess.cs) public void TransformCompression(Compression compression); Description: Parameters: Name Description Valid Value compression target compression choose from the enum Compression public void TransformCompression(Compression compression, int pageIndex); Description: Parameters: Name Description Valid Value compression target compression choose from the enum Compression pageIndex page index 0 to page count - 1 Transform compress quality Change the compress quality of JPEG, MIFF or PNG file. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformCompressQuality(80); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformCompressQuality(int quality); Parameters: Name Description Valid Value quality compress quality 1 to 100 Transform GIF version Change gif file’s version. But version 87a not support animation delays nor transparent background colors. 86 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformGIFVersion(GIFVersion.GIF89a); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformGIFVersion(GIFVersion version); Parameters: Name Description Valid Value version version of gif file choose from the enum GIFVersion Transform PNG compress level Change png file’s compress level C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformPNGCompressLevel(PNGCompressLevel.LEVEL7); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformPNGCompressLevel(PNGCompressLevel level); Parameters: Name Description Valid Value level png file’s compression level 0 to 9. 0:least but fast compression 9:best but slowest compression 87 Transform PNG compress strategy Change png file’s compress strategy. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformPNGCompressStrategy(PNGCompressStrategy.Filtered); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformPNGCompressStrategy(PNGCompressStrategy strategy); Parameters: Name Description Valid Value strategy png file’s compress strategy choose from the enum PNGCompressStrategy Transform PNG filter Change png file’s filter. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformPNGFilter(PNGFilter.PAETH ); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformPNGFilter(PNGFilter filter); Parameters: Name Description Valid Value filter filter type choose from the enum PNGFilter 88 Transform resolution Change image’s resolution C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransformResolution(72,72); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransformResolution(int horiResolution, int vertResolution); Description: Change all pages’ resolution of the RasterImage object Parameters: Name Description Valid Value horiResolution horizonal resolution >0 vertResolution vertical resolution >0 public void TransformResolution(int horiResolution, int vertResolution, int pageIndex); Description: Change the specified page’s resolution of the RasterImage object Parameters: Name Description Valid Value horiResolution horizonal resolution >0 vertResolution vertical resolution >0 pageIndex page index 0 to page count -1 Transpose C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransposeImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransposeImage(); public void TransposeImage(int pageIndex); 89 Name Description Valid Value pageIndex page index 0 to page count - 1 Transverse C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TransverseImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TransverseImage(); public void TransverseImage(int pageIndex); Parameters: Name Description Valid Value pageIndex page index 0 to page count - 1 Trim Image edge trim C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.TrimImage(); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void TrimImage(); public void TrimImage(int pageIndex); Parameters: Name Description Valid Value pageIndex page index 0 to page count - 90 Vignette Soften image edge C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.VignetteImage(0, 1, 30, 20); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void VignetteImage(double radius, double sigma, int x, int y); Description: Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, the smoother the image >0 sigma standard deviation of the Gaussian, in pixels default:1 x major axis of an ellipse >0 y minor axis of an ellipse >0 public void VignetteImage(double radius, double sigma, int x, int y, int pageIndex); Description: Parameters: Name Description Valid Value radius the radius of the Gaussian, in pixels.The higher the value, >0 the smoother the image sigma standard deviation of the Gaussian, in pixels default:1 x major axis of an ellipse >0 y minor axis of an ellipse >0 pageIndex page index 0 to page count - 1 91 Wave Change images refer to the sine wave C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //assign a processor to the RasterImage object ImageProcess processor = new ImageProcess(image); processor.WaveImage(3, 6); image.Save(@"F:\output.png"); Related API(s)( ImageProcess.cs) public void WaveImage(double amplitude, double waveLength); Description: Wave all pages of RasterImage object. Parameters: Name Description Valid Value amplitude amplitude of the wave >0 waveLength wavelength of the wave >0 public void WaveImage(double amplitude, double waveLength, int pageIndex); Description: Wave the specified page of RasterImage object. Parameters: Name Description Valid Value amplitude amplitude of the wave >0 waveLength wavelength of the wave >0 pageIndex page index 0 to page count -1 Draw Annotation This section will provide enough information for developers to understand how to draw various annotations on RasterImage object. There are two ways to finish the drawing. The first is by RasterEdge.Imaging.Annotation.dll, and the other is through the static method of class DrawMethod. Arc It’s really put an ‘ellipse’ into a rectangle which defined by the two coordinates. You can draw a partial arc with start degree and end degree, but it can be hard to determine the end degree, so you’d better set the end degree to multiplies of ninety degrees. Draw a partial arc without other additional sets: 92 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //set startDegree to 0 and endDegree to 360 you will get a closed arc //well, it’s a ellipse. DrawMethod.DrawArc(image, 20, 10, 80, 50, 45, 270); image.Save(@"F:\output.png"); Draw a partial arc with optional settings through DrawingInfo C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set arc outline color info.OutLineColor = Color.Red; //set arc outline info.OutlineWidth = 2; //set arc fill color info.FillColor = Color.Blue; //set startDegree to 0 and endDegree to 360 you will get a closed arc //well, it’s an ellipse. DrawMethod.DrawArc(image,20,10,80,50,45,270,info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawArc(RasterImage image, double startX, double startY, double endX, double endY, double startDegree, double endDegree) Description: Draw an arc on all pages of RasterImage object with no additional settings. Parameters: Name image startX startY endX endY startDegree endDegree Description Valid Value input RasterImage object can’t be null bound rectangle’s start X 0 to page’s width bound rectangle’s start Y 0 to page’s height bound rectangle’s end X 0 to page’s width bound rectangle’s end Y 0 to page’s height arc’s start degree 0 to 360 arc’s end degree 0 to 360 public static void DrawArc(RasterImage image, double startX, double startY, double endX, double endY, double startDegree, double endDegree, int pageIndex) Description: 93 Draw an arc on the specified page of RasterImage object with no additional settings. Parameters: Name image startX startY endX endY startDegree endDegree pageIndex Description Valid Value input RasterImage object can’t be null bound rectangle’s start X 0 to page’s width bound rectangle’s start Y 0 to page’s height bound rectangle’s end X 0 to page’s width bound rectangle’s end Y 0 to page’s height arc’s start degree 0 to 360 arc’s end degree 0 to 360 pick the specified page as canvas 0 to page count - 1 public static void DrawArc(RasterImage image, double startX, double startY, double endX, double endY, double startDegree, double endDegree, DrawingInfo info) Description: Draw an arc on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image input RasterImage object can’t be null startX bound rectangle’s start X 0 to page’s width startY bound rectangle’s start Y 0 to page’s height endX bound rectangle’s end X 0 to page’s width endY bound rectangle’s end Y 0 to page’s height startDegree arc’s start degree 0 to 360 endDegree arc’s end degree 0 to 360 info optional settings for the arc public static void DrawArc(RasterImage image, double startX, double startY, double endX, double endY, double startDegree, double endDegree, DrawingInfo info, int pageIndex) Description: Draw an arc on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image input RasterImage object can’t be null startX bound rectangle’s start X 0 to page’s width startY bound rectangle’s start Y 0 to page’s height endX bound rectangle’s end X 0 to page’s width endY bound rectangle’s end Y 0 to page’s height startDegree arc’s start degree 0 to 360 endDegree arc’s end degree 0 to 360 info optional settings for the arc pageIndex pick the specified page as canvas 0 to page count - 1 94 Bezier Draw a Bezier curve segment. Four points are needed, a start point ‘knot’, two control points and an end point ‘knot’. The first control point defines the direction and the second describe how fast the curve deviates from the attached end ‘knot’ points. Draw a Bezier curve with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //points to simulate a bezier path Listpotins = new List (); potins.Add(new Point(40, 10)); potins.Add(new Point(20, 50)); potins.Add(new Point(90, 10)); potins.Add(new Point(70, 40)); DrawMethod.DrawBezier(image, potins); image.Save(@"F:\output.png"); Draw a Bezier curve with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set annotation's outline color info.OutLineColor = Color.Red; //set annotation's outline info.OutlineWidth = 2; //set annotation's fill color info.FillColor = Color.Blue; //the points for the bezier List potins = new List (); potins.Add(new Point(40, 10)); potins.Add(new Point(20, 50)); potins.Add(new Point(90, 10)); potins.Add(new Point(70, 40)); DrawMethod.DrawBezier(image, potins, info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawBezier(RasterImage image, List pointList) Description: 95 Draw a bezier curve on all pages of RasterImage object without additional settings. Parameters: Name image pointList Description Valid Value the input image can’t be null consist of 4 points to describe a bezier curve path - public static void DrawBezier(RasterImage image, List pointList, int pageIndex) Description: Draw a bezier curve on the specified page of RasterImage object without additional settings. Parameters: Name Description Valid Value image the input image can’t be null pointList consist of 4 points to describe a bezier curve path pageIndex pick the specified page as canvas 0 to page count - 1 public static void DrawBezier(RasterImage image, List pointList, DrawingInfo info) Description: Draw a bezier curve on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null pointList consist of 4 points to describe a bezier curve path info optional settings for the curve public static void DrawBezier(RasterImage image, List pointList, DrawingInfo info, int pageIndex) Description: Draw a bezier curve on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null pointList consist of 4 points to describe a bezier curve path info optional settings for the curve pageIndex pick the specified page as canvas 0 to page count - 1 public static Bitmap DrawBezier(List pointList) Description: Draw a Bezier curve with no additional settings and return it as a bitmap. Parameters: Name Description Valid Value pointList consist of 4 points to describe a bezier curve path public static Bitmap DrawBezier(List pointList, DrawingInfo info) 96 Description: Draw a Bezier curve with optional settings and return it as a bitmap. Parameters: Name Description pointList consist of 4 points to describe a bezier curve path info optional settings for the curve Valid Value - Circle Draw a circle though any point on it’s circumference. Draw a circle with no additional settings: C# RasterImage image = new RasterImage(@"F:\input.png"); //center of the circle Point center = new Point(100, 100); //a point on the circle. Point anyPointOnCirle = new Point(100, 50); DrawMethod.DrawCircle(image, center,anyPointOnCirle); image.Save(@"F:\output.png"); Draw a circle with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set annotation's outline color info.OutLineColor = Color.Red; //set annotation's outline info.OutlineWidth = 2; //set annotation's fill color info.FillColor = Color.Blue; //center of the circle Point center = new Point(100, 100); //a point on the circle. Point anyPointOnCirle = new Point(100, 50); DrawMethod.DrawCircle(image, center,anyPointOnCirle, info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawCircle(RasterImage image, Point center, Point anyPointOnCircle, DrawingInfo info) Description: 97 Draw a circle on all pages of the RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null center circle’s center a valid point anyPointOnCircle any point on the circle’s circumference a valid point info optional settings for the circle - public static void DrawCircle(RasterImage image, Point center, Point anyPointOnCircle, DrawingInfo info, int pageIndex) Description: Draw a circle on the specified page of the RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null center circle’s center a valid point anyPointOnCircle any point on the circle’s circumference a valid point info optional settings for the circle pageIndex pick the specified page as canvas 0 to page count - 1 public static void DrawCircle(RasterImage image, Point center, Point anyPointOnCircle) Description: Draw a circle on all pages of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null center circle’s center a valid point anyPointOnCircle any point on the circle’s circumference a valid point public static void DrawCircle(RasterImage image, Point center, Point anyPointOnCircle, int pageIndex) Description: Draw a circle on the specified page of the RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null center circle’s center a valid point anyPointOnCircle any point on the circle’s circumference a valid point pageIndex pick the specified page as canvas 0 to page count - 1 public static Bitmap DrawCircle(Point center, Point anyPointOnCircle) Description: Draw a circle with no additional settings and return it as a bitmap 98 Parameters: Name center anyPointOnCircle Description Valid Value circle’s center a valid point any point on the circle’s circumference a valid point public static Bitmap DrawCircle(Point center, Point anyPointOnCircle, DrawingInfo info) Description: Draw a circle with optional settings and return it as a bitmap Parameters: Name Description Valid Value center circle’s center a valid point anyPointOnCircle any point on the circle’s circumference a valid point info optional settings for the circle - Ellipse Draw an ellipse through the center point, major semi-axis and minor semi-axis. Set start degree to 0 and end degree to 360 to get a complete ellipse, otherwise a partial ellipse will be returned. Draw an ellipse with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); DrawMethod.DrawEllipse(image, 100, 100, 60, 30, 0, 360); image.Save(@"F:\output.png"); Draw an ellipse with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set annotation's outline color info.OutLineColor = Color.Red; //set annotation's outline info.OutlineWidth = 2; //set annotation's fill color info.FillColor = Color.Blue; DrawMethod.DrawEllipse(image, 100, 100, 60, 30, 0, 360, info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawEllipse(RasterImage image, int centerPointX, int centerPointY, int 99 majorSemiAxis, int minorSemiAxis, int arcStat, int arcEnd) Description: Draw an ellipse on all pages of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null centerPointX x coordinate of ellipse’s center 0 to page’s width centerPointY y coordinate of ellipse’s center 0 to page’s height majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s major semi-axis 0 to page’s height arcStat ellipse’s start degree 0 to 360 arcEnd ellipse’s end degree 0 to 360 public static void DrawEllipse(RasterImage image, int centerPointX, int centerPointY, int majorSemiAxis, int minorSemiAxis, int arcStat, int arcEnd, int pageIndex) Description: Draw an ellipse on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null centerPointX x coordinate of ellipse’s center 0 to page’s width centerPointY y coordinate of ellipse’s center 0 to page’s height majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s major semi-axis 0 to page’s height arcStat ellipse’s start degree 0 to 360 arcEnd ellipse’s end degree 0 to 360 pageIndex pick a page as the canvas 0 to page count - 1 public static void DrawEllipse(RasterImage image, int centerPointX, int centerPointY, int majorSemiAxis, int minorSemiAxis, int arcStat, int arcEnd, DrawingInfo info) Description: Draw an ellipse on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null centerPointX x coordinate of ellipse’s center 0 to page’s width centerPointY y coordinate of ellipse’s center 0 to page’s height majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s major semi-axis 0 to page’s height arcStat ellipse’s start degree 0 to 360 arcEnd ellipse’s end degree 0 to 360 info Optional settings for ellipse - 100 public static void DrawEllipse(RasterImage image, int centerPointX, int centerPointY, int majorSemiAxis, int minorSemiAxis, int arcStat, int arcEnd, DrawingInfo info, int pageIndex) Description: Draw an ellipse on the specified page of RasterImage object with optional settings Parameters: Name Description Valid Value image the input image can’t be null centerPointX x coordinate of ellipse’s center 0 to page’s width centerPointY y coordinate of ellipse’s center 0 to page’s height majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s minor semi-axis 0 to page’s height arcStat ellipse’s start degree 0 to 360 arcEnd ellipse’s end degree 0 to 360 info optional settings for ellipse pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawEllipse(int majorSemiAxis, int minorSemiAxis) Description: Draw an ellipse with no additional settings and return it as a bitmap Parameters: Name Description Valid Value majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s minor semi-axis 0 to page’s height public static Bitmap DrawEllipse(int majorSemiAxis, int minorSemiAxis, DrawingInfo info) Description: Draw an ellipse with optional settings and return it as a bitmap. Parameters: Name Description Valid Value majorSemiAxis ellipse’s major semi-axis 0 to page’s width minorSemiAxis ellipse’s minor semi-axis 0 to page’s height info optional settings for ellipse - FreeHand Draw free hand with a list of points. Draw free hand with no additional settings: 101 C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //random points to simulate a freehand path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i=i+5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawFreeHand(image, points); image.Save(@"F:\output.png"); Draw free hand with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set annotation's outline color info.OutLineColor = Color.Red; //set annotation's outline info.OutlineWidth = 2; //set annotation's fill color info.FillColor = Color.Blue; //random points to simulate a freehand path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i=i+5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawFreeHand(image, points, info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawFreeHand(RasterImage image, List pointList) Description: Draw free hand on all pages of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null pointList input points to simulate the free hand path can’t be null 102 public static void DrawFreeHand(RasterImage image, List pointList, int pageIndex) Description: Draw free hand on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null pointList input points to simulate the free hand path can’t be null pageIndex pick a page as the canvas 0 to page count - 1 public static void DrawFreeHand(RasterImage image, List pointList, DrawingInfo info) Description: Draw free hand on all pages of RasterImage object with optional settings Parameters: Name Description Valid Value image the input image can’t be null pointList input points to simulate the free hand path can’t be null info optional settings for the free hand public static void DrawFreeHand(RasterImage image, List pointList, DrawingInfo info, int pageIndex) Description: Draw free hand on the specified page of RasterImage object with optional settings Parameters: Name Description Valid Value image the input image can’t be null pointList input points to simulate the free hand path can’t be null info optional settings for the free hand pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawFreeHand(List pointList) Description: Draw a free hand with no additional settings and return it as a bitmap. Parameters: Name Description Valid Value pointList input points to simulate the free hand path can’t be null public static Bitmap DrawFreeHand(List pointList, DrawingInfo info) Description: Draw a free hand with optional settings and return it as a bitmap. Parameters: Name Description Valid Value pointList input points to simulate the free hand path can’t be null info optional settings for the free hand 103 Image Put an image annotation on the input file. C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //load a image as the annotation RasterImage annotation = new RasterImage(@"F:\anno.png"); DrawMethod.DrawImage(image, annotation, 100, 100); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawImage(RasterImage image, RasterImage childImage, int xOffset, int yOffset) Description: Put an image annotation on all pages of RasterImage object with no additional settings. Parameters: Name Description Valid Value image image be treat as canvas can’t be null childImage image be treat as annotation can’t be null xOffset annotation’s x offset 0 to page width yOffset annotation’s y offset 0 to page height public static void DrawImage(RasterImage image, RasterImage childImage, int xOffset, int yOffset, int pageIndedx) Description: Put an image annotation on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image image be treat as canvas can’t be null childImage image be treat as annotation can’t be null xOffset annotation’s x offset 0 to page width yOffset annotation’s y offset 0 to page height pageIndedx pick a page as the canvas 0 to page count - 1 public static void DrawImage(RasterImage image, RasterImage childImage, int xOffset, int yOffset, DrawingInfo info) Description: Put an image annotation on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image image be treat as canvas can’t be null childImage image be treat as annotation can’t be null 104 xOffset annotation’s x offset 0 to page width yOffset annotation’s y offset 0 to page height info optional settings for the image ammotation - public static void DrawImage(RasterImage image, RasterImage childImage, int xOffset, int yOffset, DrawingInfo info, int pageIndedx) Description: Put an image annotation on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image image be treat as canvas can’t be null childImage image be treat as annotation can’t be null xOffset annotation’s x offset 0 to page width yOffset annotation’s y offset 0 to page height info optional settings for the image ammotation pageIndedx pick a page as the canvas 0 to page count - 1 Line Draw a straight line on the image. Draw a straight line with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); DrawMethod.DrawLine(image, 0, 0, 100, 100); image.Save(@"F:\output.png"); Draw a straight line with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set line color info.OutLineColor = Color.Red; //set line width info.OutlineWidth = 4; DrawMethod.DrawLine(image, 0, 0, 100, 100,info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawLine(RasterImage image, int startX, int startY, int endX, int endY, DrawingInfo info) 105 Description: Draw a straight line on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height info optional settings for the line public static void DrawLine(RasterImage image, int startX, int startY, int endX, int endY, DrawingInfo info, int pageIndedx) Description: Draw a straight line on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height info optional settings for the line pageIndedx pick a page as the canvas 0 to page count - 1 public static void DrawLine(RasterImage image, int startX, int startY, int endX, int endY) Description: Draw a straight line on all pages of RasterImage object with no additional settings: Parameters: Name Description Valid Value image the input image can’t be null startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height public static void DrawLine(RasterImage image, int startX, int startY, int endX, int endY, int pageIndex) Description: Draw a straight line on the specified page of RasterImage object with no additional settings: Parameters: 106 Name Description Valid Value image the input image can’t be null startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawLine(int startX, int startY, int endX, int endY) Description: Draw a straight line with no additional settings and return it as a bitmap. Parameters: Name Description Valid Value startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height public static Bitmap DrawLine(int startX, int startY, int endX, int endY, DrawingInfo info) Description: Draw a straight line with optional settings and return it as a bitmap. Parameters: Name Description Valid Value startX start x coordinate of the line 0 to page with startY start y coordinate of the line 0 to page height endX end x coordinate of the line 0 to page with endY end y coordinate of the line 0 to page height info optional settings for the straight line - 107 Polygon Draw a polygon with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); /random points to simulate a polygon path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i = i + 5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawPolygon(image,points); image.Save(@"F:\output.png"); Draw a polygon with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set line color info.OutLineColor = Color.Red; //set line width info.OutlineWidth = 2; //set fill color to blue.//(0,0,0,0)for a transparency color. info.FillColor = Color.Blue; //random points to simulate a polygon path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i = i + 5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawPolygon(image,points,info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawPolygon(RasterImage image, List poinList) Description: Draw a polygon on all pages of RasterImage object with no additional settings. Parameters: 108 Name Description Valid Value image the input image can’t be null poinList points to simulate a polygon area can’t be null public static void DrawPolygon(RasterImage image, List poinList, int pageIndex) Description: Draw a polygon area on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList points to simulate a polygon area can’t be null pageIndex pick a page as the canvas 0 to page count - 1 public static void DrawPolygon(RasterImage image, List poinList, DrawingInfo info) Description: Draw a polygon on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList points to simulate a polygon area can’t be null info the optional settings for the polygon public static void DrawPolygon(RasterImage image, List poinList, DrawingInfo info, int pageIndex) Description: Draw a polygon on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList points to simulate a polygon area can’t be null info the optional settings for the polygon pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawPolygon(List poinList) Description: Draw a polygon with no additional settings and return it as a bitmap. Parameters: Name Description Valid Value poinList points to simulate a polygon area can’t be null public static Bitmap DrawPolygon(List poinList, DrawingInfo info) Description: Draw a polygon with optional settings and return it as a bitmap. Parameters: 109 Name Description Valid Value poinList points to simulate a polygon area can’t be null info the optional settings for the polygon - Polygon Line Draw a polygon line with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //random points to simulate a polygon path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i = i + 5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawPolygonLine(image, points); image.Save(@"F:\output.png"); Draw a polygon line with no optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set line color info.OutLineColor = Color.Red; //set line width info.OutlineWidth = 2; //set fill color to transparency info.FillColor = Color.FromArgb(0,0,0,0); //random points to simulate a polygon path Random random = new Random(); List points = new List (); for (int i = 0; i < 100; i = i + 5) { points.Add(new Point(random.Next(100, 500), random.Next(100, 500))); } DrawMethod.DrawPolygonLine(image, points, info); image.Save(@"F:\output.png"); 110 Related API(s)( DrawMethod.cs) public static void DrawPolygonLine(RasterImage image, List poinList) Description: Draw polygon line on all pages of RasterImage with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList a list of points to simulate a polygon line path can’t be null public static void DrawPolygonLine(RasterImage image, List poinList, int pageIndedx) Description: Draw a polygon line on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList a list of points to simulate a polygon line path can’t be null pageIndedx pick a page as the canvas 0 to page count - 1 public static void DrawPolygonLine(RasterImage image, List poinList, DrawingInfo info) Description: Draw polygon line on all pages of RasterImage with optional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList a list of points to simulate a polygon line path can’t be null info optional settings for the polygon line public static void DrawPolygonLine(RasterImage image, List poinList, DrawingInfo info, int pageIndex) Description: Draw a polygon line on the specified page of the RasterImage with optional settings. Parameters: Name Description Valid Value image the input image can’t be null poinList a list of points to simulate a polygon line path can’t be null info optional settings for the polygon line pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawPolygonLine(List poinList) Description: Draw a polygon line with no additional settings and return it as bitmap. Parameters: 111 Name Description Valid Value poinList a list of points to simulate a polygon line path can’t be null public static Bitmap DrawPolygonLine(List poinList, DrawingInfo info) Description: Draw a polygon line with optional settings and return it as bitmap. Parameters: Name Description Valid Value poinList a list of points to simulate a polygon line path can’t be null info optional settings for the polygon line - Rectangle Draw a rectangle with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); DrawMethod.DrawRectangle(image, new Rectangle(100, 100, 100, 200)); image.Save(@"F:\output.png"); Draw a rectangle with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set rectangle outline color info.OutLineColor = Color.Red; //set rectangle outline width info.OutlineWidth = 2; //set fill color to transparency info.FillColor = Color.FromArgb(0,0,0,0); DrawMethod.DrawRectangle(image, new Rectangle(100,100,100,200), info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawRectangle(RasterImage image, Rectangle rect) Description: Draw rectangle on all pages of RasterImage object with no additional settings. Parameters: 112 Name Description Valid Value image the input image can’t be null rect the rectangle annotation can’t be null public static void DrawRectangle(RasterImage image, Rectangle rect, int pageIndex) Description: Draw rectangle on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null rect the rectangle annotation can’t be null pageIndex pick a page as the canvas 0 to page count - 1 public static void DrawRectangle(RasterImage image, Rectangle rect, DrawingInfo info) Description: Draw a rectangle on all pages of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null rect the rectangle annotation can’t be null info optional settings for the rectangle public static void DrawRectangle(RasterImage image, Rectangle rect, DrawingInfo info, int pageIndex) Description: Draw a rectangle on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null rect the rectangle annotation can’t be null info optional settings for the rectangle pageIndex pick a page as the canvas 0 to page count - 1 public static Bitmap DrawRectangle(int width, int height) Description: Draw a rectangle with no additional settings and return it as bitmap. Parameters: Name Description Valid Value width rectangle’s width >0 height rectangle’s height >0 public static Bitmap DrawRectangle(int width, int height, DrawingInfo info) Description: Draw a rectangle with optional settings and return it as a bitmap. 113 Parameters: Name width height info Description Valid Value rectangle’s width >0 rectangle’s height >0 optional settings for the rectangle - Text Draw text on the input file, if the font name don’t set, the ‘Calibri’ will be used defaultly. Draw text with no additional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //set the text String text = "www.RasterEdge.com"; DrawMethod.DrawText(image, text, 100,100); image.Save(@"F:\output.png"); Draw text with optional settings: C# //load a RasterImage object RasterImage image = new RasterImage(@"F:\input.png"); //create a DrawingInfo object DrawingInfo info = new DrawingInfo(); //set font family info.FontName = "Calibri"; //set font size info.FontSize = 40; //set font fill color info.FillColor = Color.Blue; //set font outline color info.OutLineColor = Color.Red; //set the text String text = "www.RasterEdge.com"; DrawMethod.DrawText(image, text, 100,100,info); image.Save(@"F:\output.png"); Related API(s)( DrawMethod.cs) public static void DrawText(RasterImage image, String text, int xOffset, int yOffset) Description: Draw text on all pages of RasterImage object with no additional settings. Parameters: 114 Name Description Valid Value image the input image can’t be null text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height public static void DrawText(RasterImage image, String text, int xOffset, int yOffset, int pageIndex) Description: Draw text on the specified page of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height pageIndex pick a page as the canvas 0 to page count - 1 public static void DrawText(RasterImage image, String text, int xOffset, int yOffset, DrawingInfo info) Description: Draw text on all pages of RasterImage object with no additional settings. Parameters: Name Description Valid Value image the input image can’t be null text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height info optional settings for the text public static void DrawText(RasterImage image, String text, int xOffset, int yOffset, DrawingInfo info, int pageIndex) Description: Draw text on the specified page of RasterImage object with optional settings. Parameters: Name Description Valid Value image the input image can’t be null text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height info optional settings for the text pageIndex pick a page as the canvas 0 to page count - 1 115 public static Bitmap DrawText(String text, int xOffset, int yOffset, int width, int height) Description: Draw a text without additional settings and return it as bitmap. Parameters: Name Description Valid Value text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height width the annotation’s width 0 to page width height the annotation’s height 0 to page height public static Bitmap DrawText(String text, int xOffset, int yOffset, int width, int height, DrawingInfo info) Description: Draw a text with optional settings and return it as bitmap. Parameters: Name Description Valid Value text the text annotation can’t be null xOffset x coordinate of the annotation 0 to page width yOffset y coordinate of the annotation 0 to page height width the annotation’s width 0 to page width height the annotation’s height 0 to page height info optional settings for the text - 116
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 121 Language : zh-CN Tagged PDF : Yes Author : Dt Creator : Microsoft® Office Word 2007 Create Date : 2016:06:15 15:11:39+08:00 Modify Date : 2016:06:15 15:11:39+08:00 Producer : Microsoft® Office Word 2007EXIF Metadata provided by EXIF.tools