Highlight and crop an image in C#
This example shows how to create an image from the area defined by a highlighted region located on top of a document displayed within the GdViewer
object. Highlighted regions can be used to specify areas and highlight them using only the mouse.
//We assume that GdPicture has been correctly installed and unlocked.//We assume the GdViewer object called GdViewer1 has been created and painted on the form.GdPictureImaging oGdPictureImaging = new GdPictureImaging();//Loading the image from a file.int currentImageID = oGdPictureImaging.CreateGdPictureImageFromFile("C:\\Image.tif");//Checking if the image resource has been loaded correctly.if (oGdPictureImaging.GetStat() != GdPictureStatus.OK){ MessageBox.Show("The image can't be loaded. Error: " + oGdPictureImaging.GetStat().ToString(), "Drawing regions Example", MessageBoxButtons.OK, MessageBoxIcon.Error);}else{ //Displaying the image in the GdViewer. GdViewer1.DisplayFromGdPictureImage(currentImageID);}//We will keep the current image for further use, see below.
int selectedImageID = 0; //A new image we are going to create. //On the Mouse UP event on the GdViewer, get a highlighted region coordinates based on the rectangle of selection of the GdViewer. //If no rectangle of selection is painted on the GdViewer, this event will do nothing.public void Mouse_UP_Draw_Region(System.Object eventSender, System.EventArgs eventArgs){ //Initializing variables to hold the position of the rectangle of selection on the document. int leftArea = 0; int topArea = 0; int widthArea = 0; int heightArea = 0; //Checking if a rectangle of selection has been painted on the GdViewer. if (GdViewer1.IsRect()) { //Getting the location of the selection on the document. GdViewer1.GetRectCoordinatesOnDocument(ref leftArea, ref topArea, ref widthArea, ref heightArea); //Creating the image from the highlighted region. selectedImageID = oGdPictureImaging.CreateClonedGdPictureImageArea(currentImageID, leftArea, topArea, widthArea, heightArea); GdViewer1.DisplayFromGdPictureImage(selectedImageID); }}
// Do not forget to release and dispose both images!oGdPictureImaging.ReleaseGdPictureImage(currentImageID);oGdPictureImaging.ReleaseGdPictureImage(selectedImageID);oGdPictureImaging.Dispose();
This code sample is an example that illustrates how to use our SDK. Please adapt it to your specific use case.