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

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

  1. WilliamNex Avatar
    WilliamNex

    top online pharmacy india: Indo-Generic Export – indian pharmacy

  2. RandyLew Avatar
    RandyLew
  3. king-wifi.win Avatar

    References:

    Pink floyd pompeii

    References:
    king-wifi.win

  4. WilliamNex Avatar
    WilliamNex

    US Meds Outlet: US Meds Outlet – online pharmacy bc

  5. RandyLew Avatar
    RandyLew

    http://bajameddirect.com/# medicine from mexico

  6. WilliamNex Avatar
    WilliamNex

    mexico medicine: BajaMed Direct – BajaMed Direct

  7. StephenPep Avatar
    StephenPep

    medicine mexico BajaMed Direct BajaMed Direct

  8. WilliamNex Avatar
    WilliamNex

    viagra online canadian pharmacy: US Meds Outlet – online pharmacy fungal nail

  9. HarryZoowl Avatar
    HarryZoowl

    BajaMed Direct: BajaMed Direct – BajaMed Direct

  10. http://humanlove.stream/ Avatar

    References:

    Casino ontario

    References:
    http://humanlove.stream/

  11. RandyLew Avatar
    RandyLew

    https://indogenericexport.shop/# antispasmodic medication

  12. WilliamNex Avatar
    WilliamNex

    top 10 pharmacies in india: Indo-Generic Export – Online medicine order

  13. RandyLew Avatar
    RandyLew

    http://usmedsoutlet.com/# costco online pharmacy

  14. HarryZoowl Avatar
    HarryZoowl

    india online pharmacy: Indo-Generic Export – reputable indian pharmacies

  15. WilliamNex Avatar
    WilliamNex

    indian pharmacy paypal: Indo-Generic Export – top 10 online pharmacy in india

  16. StephenPep Avatar
    StephenPep

    BajaMed Direct BajaMed Direct mexican medicine store

  17. RandyLew Avatar
    RandyLew

    https://bajameddirect.com/# best mexican pharmacy online

  18. WilliamNex Avatar
    WilliamNex

    canada rx pharmacy world: trusted online pharmacy – canadian pharmacy coupon

  19. VaughnOvaph Avatar
    VaughnOvaph
  20. HarryZoowl Avatar
    HarryZoowl

    US Meds Outlet: canada pharmacy online legit – pharmacy delivery

  21. RandyLew Avatar
    RandyLew

    http://indogenericexport.com/# antispasmodic medication

  22. WilliamNex Avatar
    WilliamNex

    BajaMed Direct: BajaMed Direct – BajaMed Direct

  23. RandyLew Avatar
    RandyLew

    https://bajameddirect.shop/# pharmacies in mexico

  24. StephenPep Avatar
    StephenPep

    canada pharmacy not requiring prescription US Meds Outlet US Meds Outlet

  25. VaughnOvaph Avatar
    VaughnOvaph
  26. HarryZoowl Avatar
    HarryZoowl

    US Meds Outlet: US Meds Outlet – US Meds Outlet

  27. WilliamNex Avatar
    WilliamNex

    canadian online pharmacy no prescription: canadian pharmacy victoza – US Meds Outlet

  28. WilliamNex Avatar
    WilliamNex

    india online pharmacy: online pharmacy india – world pharmacy india

  29. VaughnOvaph Avatar
    VaughnOvaph
  30. HarryZoowl Avatar
    HarryZoowl

    Online medicine order: Indo-Generic Export – cheapest online pharmacy india

  31. RandyLew Avatar
    RandyLew

    https://bajameddirect.com/# mexican farmacia

  32. WilliamNex Avatar
    WilliamNex

    top online pharmacy india: Indo-Generic Export – online pharmacy india

  33. StephenPep Avatar
    StephenPep

    US Meds Outlet US Meds Outlet US Meds Outlet

  34. online casino Australia fast withdrawal Avatar

    Participants should consider examining to candy96.fun own tempting incentives and rewards, and comparing the fresh RTP and you may Hit Regularity out of a good games.
    Of numerous higher online pokies from the world’s most significant designers like the epic Aussie brand,
    Aristocrat, is going to be starred using your browser having Flash.
    The online game have 40 generous paylines and you may a remarkable totally free
    revolves round with growing wilds and multipliers around 12x.
    Geisha is one of the most well-known offerings of Aristocrat online game, and it also’s easy to understand why.

    Almost every real money online casino in Australia has a welcome bonus.
    But when it comes to combining great design, top-tier gameplay, and a thoughtful layout,
    WINSHARK takes the gold among the best Australian online casinos.
    This was a close category, because real money pokies are the bread and
    butter of pretty much every Aussie online casino.
    Trusted Australian online casino real money sites process payments consistently, especially with crypto and well-known e-wallets like
    Neteller or Skrill. New online casinos are becoming a strong choice for Australian players who want modern features,
    faster site performance, and updated gaming libraries.

    Thanks to some awesome game developers, you can now play scratch-offs
    online using a clean and efficient mobile app. Founded in 2009, FanDuel is a fantasy sports-style betting
    site that allows fans to buy in on sports bets to win real money.
    Swagbucks has a great selection that true gamers will love — and you might be able to
    make some free money online because of it.

    References:
    online casino Australia fast withdrawal

  35. VaughnOvaph Avatar
    VaughnOvaph

    http://usmedsoutlet.com/# reputable online pharmacy uk

  36. WilliamNex Avatar
    WilliamNex

    order antibiotics from mexico: BajaMed Direct – BajaMed Direct

  37. HarryZoowl Avatar
    HarryZoowl

    mail order pharmacy india: Indo-Generic Export – india pharmacy mail order

  38. fdertolmrtokev Avatar

    Hey very cool site!! Man .. Beautiful .. Wonderful .. I will bookmark your website and take the feeds additionally…I’m glad to search out a lot of helpful information right here in the submit, we’d like develop more techniques in this regard, thanks for sharing.

  39. WilliamNex Avatar
    WilliamNex

    pharmacy online shopping usa: US Meds Outlet – pharmacy in canada

  40. VaughnOvaph Avatar
    VaughnOvaph

    https://indogenericexport.shop/# mail order pharmacy india

  41. StephenPep Avatar
    StephenPep

    indian pharmacy paypal Indo-Generic Export best online pharmacy india

  42. HarryZoowl Avatar
    HarryZoowl

    mexico drug store: BajaMed Direct – BajaMed Direct

  43. RandyLew Avatar
    RandyLew

    http://indogenericexport.com/# muscle relaxers for back pain

  44. WilliamNex Avatar
    WilliamNex

    BajaMed Direct: medication in mexico – BajaMed Direct

  45. RandyLew Avatar
    RandyLew

    https://indogenericexport.shop/# muscle relaxers for back pain

  46. WilliamNex Avatar
    WilliamNex

    Online medicine order: buy prescription drugs from india – indianpharmacy com

Leave a Reply

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