Category: PowerBuilder
Hits: 859

User Rating: 3 / 5

Star ActiveStar ActiveStar ActiveStar InactiveStar Inactive

ImageMagick is a free open-source software package that allows you to convert image files between formats, resize images and perform other functions. It can be used from the command line or as a COM object using PowerBuilder’s OLEObject functionality.


You can download the installer from here:


You must use one of the installers with the word “dynamic” in the description. I chose the Win32 installer because it offers a higher resolution than the Win64 Dynamic installer.


The command documentation for ImageMagick can be found here:


There are several commands that are supported by the COM interface.


compare: Compares two image files and returns information about the differences.


composite: Overlaps one image over another resulting in a third image file.


convert: Converts between image formats as well as resizing the image and other actions such as blur, crop, despeckle, and much more.


identify: Describes the format and characteristics of image files.


mogrify: Resizes the image and other actions such as blur, crop, despeckle, and much more. Mogrify overwrites the original image file, whereas, convert writes to a different image file.


montage: Creates a composite image by combining several separate images. The images are tiled on the composite image optionally adorned with a border, frame, image name, and more.


Here is an example that converts a JPG file to PNG:


OLEObject oMagick

String ls_origfile, ls_destfile

Integer li_rc

Any la_result


ls_origfile = “C:\PBSource\PB105\ImageMagick\Totoro.jpg”

ls_destfile = “C:\PBSource\PB105\ImageMagick\Totoro.png”


oMagick = Create OLEObject


li_rc = oMagick.ConnectToNewObject(“ImageMagickObject.MagickImage”)

If li_rc = 0 Then

   la_result = oMagick.Convert(ls_origfile, “-format”, “png”, ls_destfile)

   MessageBox(“Convert”, “Result: ” + String(la_result))


   MessageBox(“ConnectToNewObject”, “Failed: ” + String(li_rc), StopSign!)

End If




Destroy oMagick

We use cookies which are necessary for the proper functioning of our websites. We also use cookies to analyze our traffic, improve your experience and provide social media features. If you continue to use this site, you consent to our use of cookies.