Image Cropping

How to crop an image in UIPath?Is there any activity for Image Cropping in Ui Path?

Can you provide some information regarding your scenario where you want to crop the image? @Teja1

Thanks,
Sreekanth.k

Hi @Teja1,
@sreekanth,

There is no activity related to cropping image activity in uipath.

You can create custom activity to resize your image using below code.

Regards,
Arivu

Use Graphics.DrawImage Method (Image, RectangleF, RectangleF, GraphicsUnit) method.

Dim fileName = "C:\file.jpg"
Dim CropRect As New Rectangle(100, 0, 100, 100)
Dim OriginalImage = Image.FromFile(fileName)
Dim CropImage = New Bitmap(CropRect.Width, CropRect.Height)
Using grp = Graphics.FromImage(CropImage)
    grp.DrawImage(OriginalImage, New Rectangle(0, 0, CropRect.Width, CropRect.Height), CropRect, GraphicsUnit.Pixel)
    OriginalImage.Dispose()
    CropImage.Save(fileName)
End Using

Try this code using Invoke activity

Regards,
Arivu

Hi,

Are u still searching for this? If so here is the solution.

i have added the sample .xaml below. You juCrop Images.xaml (6.8 KB)
st need to pass the arguments x, y, height, width.

3 Likes

@amaresan this one i needed
thank u

1 Like

There is a pitfall in cropping an image by cloning it.
If the cropArea crosses img boundary, it gives a “Out of memory” exception, see: How do I crop an image using C#? - Stack Overflow
Here is an example using the Graphics.DrawImage Method: Crop-Image.xaml (7.0 KB)

4 Likes

FYI,
when anyone tries to use this workflow, in arguments at Rectangle datatype, pass your values like “new Rectangle(0,0,1080,1000)”, then it will work perfectly.

2 Likes

This worked for me - thanks Amaresan

OK … I’m going to tell you how to do it because I don’t want you to have go through the ballache that I have just gone through !!!

you need two Assign activities
First. use a Load Image activity to Load your image into an image variable
Second. create a rectangle object
Third. crop the image using the rectangle object

  1. looks like this
    ASSIGN ACTIVITY
    on the left put : regionCropping (or whatever you want to call it) but this has to be of the type UiPath.Core.Region
    on the right put : New uipath.core.Region(New Rectangle(233,680,178,37))

  2. looks like this
    ASSIGN ACTIVITY
    on the left put : imgCropped (or whatever you want to call it) but it has to be of the type UiPath.Core.Image
    on the right put : imgTest01.CropImage(regionCropping , , False,)
    you have to have False in there or your image will come with a ridiculous border !?!

Hope that helps … I don’t want anyone to have to go through the days of frustration that I have had … absolutely no documentation about this function … hope this makes amends !
And here’s the file … hope you find it useful.
CropImages02.xaml (6.5 KB)

7 Likes

That border is bizarre. Thanks for providing the args to get rid of it!

I was cropping a screenshot and extracting color data. Kept trying to figure out where the red was coming from…

hey please can you tell me how to rotate images after cropping because it is not in a required format, will be thankful to you