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

  1. http://218.201.98.56 Avatar

    References:

    Bodybuilders that don’t use steroids

    References:
    http://106.55.61.128:3000/vpejuliet28443

  2. KeithDep Avatar
    KeithDep

    https://stericarepharmacy.shop/# order prednisone from canada

  3. Rayfordpag Avatar
    Rayfordpag

    generic amoxicillin online: amoxil without prescription usa – bacterial infection medication

  4. arbeitswerk-premium.de Avatar

    References:

    Someone who takes steroids is risking which of the following outcomes?

    References:
    http://m.tshome.co.kr/gnuboard5/bbs/board.php?bo_table=0647380939&wr_id=1290

  5. play.ophirstudio.com Avatar

    References:

    Bodybuilders and steroids

    References:
    http://git.yanei-iot.com:600/freddybenoit16

  6. KevinBup Avatar
    KevinBup

    ivermectin oral tablets usa: ivermectin oral tablets usa – stromectol without prescription usa

  7. eduxhire.com Avatar

    References:

    Bulking steroids

    References:
    http://218.232.111.112:8300/fanny21l224831

  8. www.latflex.net Avatar

    References:

    Best gnc supplements to get ripped

    References:
    https://git.archieri.fr/vernbarker7986

  9. http://47.92.23.195 Avatar

    References:

    Steroid stacks for cutting

    References:
    https://git.powderbluecrayon.com/kendracarandin

  10. what is zoloft prescribed for

    what is zoloft prescribed for

  11. https://volunteeri.com Avatar

    References:

    Benefits of steroids in medicine

    References:
    https://k0ki-dev.com/clydegonyea14

  12. Rayfordpag Avatar
    Rayfordpag

    cost of ivermectin: stromectol delivery united states – stromectol delivery united states

  13. geniusactionblueprint.com Avatar

    References:

    Bodybuilder steroids for sale

    References:
    https://www.izen.live/karllauterbach

  14. 182.92.251.55 Avatar

    References:

    Anabolic steroid in sports

    References:
    https://gitea.avixc-nas.myds.me/crystlerascoe5

  15. 43.143.209.246 Avatar

    References:

    Which is one function of steroids?

    References:
    https://git.vajdak.cz/eve68483338996

  16. KeithDep Avatar
    KeithDep

    https://amoxilfast.shop/# trusted antibiotic pharmacy usa

  17. KevinBup Avatar
    KevinBup

    generic prednisone cost: prednisone tablets 10mg 20mg – prednisone 10 mg

  18. Rayfordpag Avatar
    Rayfordpag

    prednisone 300mg: prednisone without prescription usa – prednisone uk

  19. Allendwems Avatar
    Allendwems

    http://stericarepharmacy.com/# prednisone online sale

  20. KevinBup Avatar
    KevinBup

    antiparasitic medication usa: parasite infection medication – antiparasitic medication usa

  21. KeithDep Avatar
    KeithDep
  22. Rayfordpag Avatar
    Rayfordpag

    average cost of prednisone 20 mg: prednisone for inflammation treatment – prednisone uk

  23. KevinBup Avatar
    KevinBup

    ivermectin oral tablets usa: generic ivermectin online pharmacy – generic ivermectin online pharmacy

  24. Rayfordpag Avatar
    Rayfordpag

    safe antibiotics online source: buy amoxil online usa – amoxil fast

  25. KevinBup Avatar
    KevinBup

    antiparasitic medication usa: ivermectin oral tablets usa – buy stromectol online usa

  26. Allendwems Avatar
    Allendwems
  27. KeithDep Avatar
    KeithDep

    https://amoxilfast.shop/# bacterial infection medication

  28. Rayfordpag Avatar
    Rayfordpag

    parasite infection medication: stromectol delivery united states – ivermectin tablets online

  29. KevinBup Avatar
    KevinBup

    parasite infection medication: stromectol without prescription usa – parasite infection medication

  30. Rayfordpag Avatar
    Rayfordpag

    safe antibiotics online source: antibiotics online pharmacy usa – trusted antibiotic pharmacy usa

  31. KevinBup Avatar
    KevinBup

    amoxicillin capsules online: trusted antibiotic pharmacy usa – generic amoxicillin online

  32. KeithDep Avatar
    KeithDep

    http://ivermectinfast.com/# ivermectin oral tablets usa

  33. Rayfordpag Avatar
    Rayfordpag

    ivermectin oral tablets usa: generic ivermectin online pharmacy – ivermectin fast

  34. KevinBup Avatar
    KevinBup

    cheap prednisone online: SteriCare Pharmacy – prednisone 10 mg tablets

  35. Allendwems Avatar
    Allendwems

    https://ivermectinfast.com/# trusted ivermectin pharmacy

  36. Rayfordpag Avatar
    Rayfordpag

    fast delivery amoxicillin usa: trusted antibiotic pharmacy usa – trusted antibiotic pharmacy usa

  37. KevinBup Avatar
    KevinBup

    prednisone otc price: prednisone – prednisone 30 mg

  38. KeithDep Avatar
    KeithDep

    https://amoxilfast.com/# can you buy amoxicillin uk

  39. Rayfordpag Avatar
    Rayfordpag

    average cost of prednisone: buy 40 mg prednisone – prednisone best price

  40. KevinBup Avatar
    KevinBup

    ivermectin oral tablets usa: ivermectin treatment tablets – buy stromectol online usa

  41. KevinBup Avatar
    KevinBup

    amoxil without prescription usa: amoxil without prescription usa – bacterial infection medication

  42. Rayfordpag Avatar
    Rayfordpag

    ivermectin fast: generic ivermectin online pharmacy – stromectol without prescription usa

  43. KeithDep Avatar
    KeithDep

    https://amoxilfast.shop/# safe antibiotics online source

  44. Allendwems Avatar
    Allendwems

    http://amoxilfast.com/# safe antibiotics online source

  45. KevinBup Avatar
    KevinBup

    prednisone 5084: SteriCare Pharmacy – prednisone 20 mg without prescription

Leave a Reply

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