ImageMagick installing and exploring it, a good alternative for the GD library

Although PHP GD library handles basic image operations quite good, you have probably run into the limitations of GD library as well, it is often slow, memory intensive and a bit complicated to use for advanced image effects. ImageMagick however is a very good alternative. It is an opensource software suite licensed under a BSD style license from IM itself. ImageMagick provides in all functionality that can be accomplished with the GD library but even goes a step further with support for more advanced image edit techniques. An example of such a technique is the recently added “liquid scaling” feature, this is a content aware scaling option.

Click the image below to see an example of liquid scaling:
Liquid Scaling with imagemagick

So how do I get such a result? Well with PHP GD library it would take a whole lot of code, thinking and beers to get a script that does the same without exceeding your memory_limit, with ImageMagick however it is just one simple command.

exec("convert inputimage.jpg  -liquid-rescale 250x500%\!  outputimage.jpg");

The nice thing about ImageMagick is that you can often accomplish very sophisticated image effects with just one command, you can also chain commands. Now although IM has a quite good documentation guide available you maybe just want to be able to perform basic image operations with IM without seeking your way trough the documentation all the time. Their are some PHP classes available that will make your life easier.

My personal favor is PhMagick or a home brew script, why? Well I like the idea of wrapper classes more, my code is somewhat more portable because I don’t have to install the IM extension on a server and another PHP extension to communicate with it, furthermore I think that using wrapper classes gives you more insight in IM itself, you will better understand what is going on, on the other hand you probably will spend some hours to figure out why the command is not doing what you expected it to do because you are missing a simple ! or ^ parameter option.

Personal experience on installing IM on the server
Some time ago I wanted to install IM on my new dev and live server, the dev server is running OSX and the live server is running a Fedora distribution. So the first step before I tried to install IM was to read the documentation (yeah I’m one of those guys that also actually reads the readme files and documentation 😉 of products). I followed the “Install from source” tutorial. So I started with the live server, after downloading and unpacking IM I ran the ./configure command immediately I was faced with the error “no acceptable c compiler found in $PATH”, now my Linux skills are far from topnotch, so after some googling I found out that the easiest way to fix this issue was to install GCC (GNU Compiler Collection) that already included a C compiler. After installing GCC and running the ./configure command everything went fine, IM was installed successfully. I wanted to test if it was working correctly so I tried to resize several images but again an error occurred “convert: no decode delegate for this image format”, okay perhaps I should read the documentation more carefully next time because before installing IM you should also install the image libraries that you will use. In my case this was “yum install libjpeg libjpeg-devel libpng libpng-devel libtiff libtiff-devel”, now again I needed to install IM again, not much work, but still something to remember when installing IM. On the dev OSX server installing ImageMagick was quite simple, I used a precompiled dmg and only needed to install the Apple XCode developer tools.

So to summarize:

Advantages of using ImageMagick:

  • it uses less resources, forget about the memory_limit issues with PHP when using GD and large images
  • it’s slighty faster (note: depending on the filetype and image size GD beats IM in speed when it comes to resizing
  • Image Magick has support for more filetypes
  • as I showed before, it is very simple to use
    exec('convert "'.$sSourcePath.'" -resize '.$iWidth.'x"'.$sDestinationPath.'"');
  • Some very nice features like liquid scaling or seam carving

Disadvantages of using Image Magick:

  • you need to have full access to your server, it isn’t bundled with PHP
  • compiling IM can give some trouble, you shouldn’t forget to get the image libraries you want to use

Useful links

Comments

3,548 responses to “ImageMagick installing and exploring it, a good alternative for the GD library”

  1. Jeffreybrump Avatar
    Jeffreybrump

    BorderValue RX: mexico medication – order antibiotics from mexico

  2. DanielSpere Avatar
    DanielSpere

    tops pharmacy: india medication delivery to usa – best canadian online pharmacy

  3. JamesFaw Avatar
    JamesFaw

    https://trustedindiacarerx.com/# canada drugs coupon code

  4. Jeffreybrump Avatar
    Jeffreybrump

    online pharmacy india: trusted indian pharmacy usa – list of online pharmacies

  5. DanielSpere Avatar
    DanielSpere

    cheapest pharmacy for prescriptions without insurance: trusted indian pharmacy usa – canadian pharmacy

  6. JamesFaw Avatar
    JamesFaw

    http://certifiedmaplerx.com/# certified canadian international pharmacy

  7. Jeffreybrump Avatar
    Jeffreybrump

    BorderValue RX: mexican drugstore shipping to usa – BorderValue RX

  8. DanielSpere Avatar
    DanielSpere

    certified canadian pharmacy usa: onlinecanadianpharmacy – canadian medication delivery to usa

  9. JamesJep Avatar
    JamesJep

    https://trustedindiacarerx.com/# world pharmacy india

  10. JamesFaw Avatar
    JamesFaw

    https://trustedindiacarerx.com/# online pharmacy quick delivery

  11. Jeffreybrump Avatar
    Jeffreybrump

    prescription free canadian pharmacy: indianpharmacy com – online pharmacy worldwide shipping

  12. DanielSpere Avatar
    DanielSpere

    uk pharmacy: TrustedIndiaCare RX – canadian king pharmacy

  13. JamesFaw Avatar
    JamesFaw

    https://bordervaluerx.shop/# affordable border pharmacy mexico

  14. Jeffreybrump Avatar
    Jeffreybrump

    viagra canadian pharmacy vipps approved: trusted indian pharmacy usa – buying drugs from canada

  15. DanielSpere Avatar
    DanielSpere

    canadian pharmacy online reviews: TrustedIndiaCare RX – best canadian online pharmacy

  16. JamesFaw Avatar
    JamesFaw

    https://certifiedmaplerx.com/# certified canadian pharmacy usa

  17. Jeffreybrump Avatar
    Jeffreybrump

    canadian medication delivery to usa: canadian medication delivery to usa – canada drugstore pharmacy rx

  18. DanielSpere Avatar
    DanielSpere

    best online pharmacy no prescription: india medication delivery to usa – best canadian pharmacy for viagra

  19. JamesJep Avatar
    JamesJep

    http://bordervaluerx.com/# affordable border pharmacy mexico

  20. DanielSpere Avatar
    DanielSpere

    CertifiedMaple RX: CertifiedMaple RX – canadian medication delivery to usa

  21. JamesFaw Avatar
    JamesFaw
  22. Jeffreybrump Avatar
    Jeffreybrump

    online pharmacy dubai: india medication delivery to usa – onlinecanadianpharmacy

  23. www.binance.com registrera dig Avatar

    I don’t think the title of your article matches the content lol. Just kidding, mainly because I had some doubts after reading the article.

  24. DanielSpere Avatar
    DanielSpere

    canadian pharmacy coupon: trusted indian pharmacy usa – internet pharmacy manitoba

  25. JamesFaw Avatar
    JamesFaw

    http://trustedindiacarerx.com/# cyprus online pharmacy

  26. Jeffreybrump Avatar
    Jeffreybrump

    BorderValueRX: mexico border medications usa access – BorderValue RX

  27. DanielSpere Avatar
    DanielSpere

    certified canadian pharmacy usa: pharmacy rx world canada – certified canadian pharmacy usa

  28. JamesJep Avatar
    JamesJep

    https://trustedindiacarerx.com/# mexican pharmacy online

  29. Jeffreybrump Avatar
    Jeffreybrump

    online pharmacy china: verified india drug manufacturers – online pharmacy weight loss

  30. iraqitube.com Avatar

    References:

    What do medical steroids do to your body

    References:
    https://mayvideo.in/@kennithmdm8021?page=about

  31. 43.139.2.237 Avatar

    References:

    Can i buy anabolic steroids legal

    References:
    https://parnian.app/mabelhaffner40

  32. getchefpahadi.com Avatar

    References:

    Anabolic steroids mechanism of action

    References:
    http://101.42.28.156:3000/florencemccull

  33. camtalking.com Avatar

    References:

    Where does anabolic steroids come from

    References:
    https://smartastream.com/@roscoebalsilli?page=about

  34. git.huwhy.cn Avatar

    References:

    Supplement steroids

    References:
    https://khmerhd.tv/@biancae301729?page=about

  35. git.meshel.cn Avatar

    References:

    Legal steroid uk

    References:
    https://git.suo0.com/gretayork10968

  36. www.jobaaty.com Avatar

    References:

    Best bulking steroid

    References:
    https://katambe.com/@renaboland915

  37. 39.99.175.172 Avatar

    References:

    Legal injectable steroids

    References:
    http://47.121.119.78:3000/emilegosselin0

  38. dianyanai.com Avatar

    References:

    What does steroids do to the body

    References:
    http://mignonmuse.com/bbs/board.php?bo_table=free&wr_id=597753

Leave a Reply

Your email address will not be published. Required fields are marked *