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,514 responses to “ImageMagick installing and exploring it, a good alternative for the GD library”

  1. MatthewBom Avatar
    MatthewBom

    mexican online pharmacy wegovy: reliable mexican pharmacies – mexico pharmacy price list

  2. Michaelvop Avatar
    Michaelvop

    mexican pharmacies online: mexico pharmacies online – mexican pharmacies no prescription

  3. Edwardkeync Avatar
    Edwardkeync
  4. MatthewBom Avatar
    MatthewBom

    cheapest pharmacy for prescription drugs: Prime India Meds – canadian pharmacies not requiring prescription

  5. Michaelvop Avatar
    Michaelvop

    tops pharmacy: indian pharmacy online – canadian pharmacy no rx needed

  6. Stevewache Avatar
    Stevewache

    NorthCareRx NorthCareRx NorthCareRx

  7. Edwardkeync Avatar
    Edwardkeync

    https://bordercarerx.shop/# legit mexican pharmacy without prescription

  8. PhillipStibe Avatar
    PhillipStibe

    http://bordercarerx.com/# reputable pharmacies in mexico

  9. MatthewBom Avatar
    MatthewBom

    safe reliable canadian pharmacy: real canadian pharmacy – NorthCareRx

  10. Stevewache Avatar
    Stevewache

    canadian pharmacy viagra 50 mg top 10 pharmacies in india rx pharmacy online

  11. Edwardkeync Avatar
    Edwardkeync
  12. MatthewBom Avatar
    MatthewBom

    canadianpharmacymeds com: NorthCareRx – NorthCareRx

  13. Καλτερο κωδικ αναφορ Binance 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.

  14. MatthewBom Avatar
    MatthewBom

    canadian medications: safe canadian pharmacy – canada drugs online

  15. Edwardkeync Avatar
    Edwardkeync

    http://primeindiameds.com/# internet pharmacy mexico

  16. PhillipStibe Avatar
    PhillipStibe

    http://bordercarerx.com/# reliable mexican pharmacies

  17. Stevewache Avatar
    Stevewache

    is canadian pharmacy legit NorthCareRx NorthCareRx

  18. MatthewBom Avatar
    MatthewBom

    affordable pharmacy: Online medicine order – canadapharmacyonline com

  19. Edwardkeync Avatar
    Edwardkeync

    https://bordercarerx.shop/# legit mexican pharmacy without prescription

  20. MatthewBom Avatar
    MatthewBom

    NorthCareRx: canadian pharmacy tampa – NorthCareRx

  21. Edwardkeync Avatar
    Edwardkeync

    https://bordercarerx.com/# reputable pharmacies in mexico

  22. Stevewache Avatar
    Stevewache

    online pharmacy same day delivery Prime India Meds web pharmacy

  23. MatthewBom Avatar
    MatthewBom

    canadian pharmacy online cialis: Prime India Meds – reddit canadian pharmacy

  24. PhillipStibe Avatar
    PhillipStibe

    https://northcarerx.shop/# my canadian pharmacy rx

  25. Edwardkeync Avatar
    Edwardkeync

    https://bordercarerx.com/# reputable pharmacies in mexico

  26. MatthewBom Avatar
    MatthewBom

    reputable pharmacies in mexico: reputable pharmacies in mexico – mexico pharmacies online

  27. Stevewache Avatar
    Stevewache

    northwest canadian pharmacy Prime India Meds canadian pharmacy 24h com

  28. Edwardkeync Avatar
    Edwardkeync

    https://bordercarerx.shop/# mexico pharmacies online

  29. MatthewBom Avatar
    MatthewBom

    legit mexican pharmacy without prescription: BorderCare RX – BorderCare RX

  30. Michaelvop Avatar
    Michaelvop

    pharmacy website india: Prime India Meds – international online pharmacy

  31. PhillipStibe Avatar
    PhillipStibe

    https://bordercarerx.com/# mexico pharmacies online

  32. MatthewBom Avatar
    MatthewBom

    mexico pharmacies online: BorderCare RX – mexico pharmacies online

  33. Stevewache Avatar
    Stevewache

    medication canadian pharmacy NorthCareRx NorthCareRx

  34. Edwardkeync Avatar
    Edwardkeync

    http://bordercarerx.com/# mexico pharmacies online

  35. Michaelvop Avatar
    Michaelvop

    NorthCareRx: NorthCareRx – NorthCareRx

  36. MatthewBom Avatar
    MatthewBom

    NorthCareRx: trustworthy canadian pharmacy – NorthCareRx

  37. https://git.daoyoucloud.com/ Avatar

    References:

    Testosterone tablets steroids

    References:
    https://www.singuratate.ro/@rowenaserle359

  38. 218.201.98.56 Avatar

    References:

    Bodybuilding steroids side effects photos

    References:
    https://mardplay.com/staciekwd52035

  39. vidmero.com Avatar

    References:

    What is an anabolic steroid

    References:
    https://afribass.com/@leomaomar20755?page=about

  40. gitea.jnyuxia.com Avatar

    References:

    Jay cutler steroid cycle

    References:
    https://testgitea.educoder.net/danilo58965144

  41. https://gitea.jnyuxia.com/ Avatar

    References:

    Anabolic steroid supplements

    References:
    https://git.limework.net/bykadriene1316

  42. gitea-inner.fontree.cn Avatar

    References:

    Oral testosterone steroids

    References:
    https://lordhub.vip/lrloliver51831

  43. 121.36.47.159 Avatar

    References:

    2ahukewik8-seu8vnahuhgz4khrreaaqq_auoaxoecaeqaq|the best steroids for muscle growth

    References:
    http://116.204.12.56:3000/yvonneleeper66

Leave a Reply

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