ImageMagick or GraphicsMagick?

Source: Internet
Author: User
Tags imagemagick windows support

Citation: http://co63oc.blog.51cto.com/904636/328997

The ImageMagick (IM) suite contains command line graphical tools that are a major free software; Linux, other Unix-like operating systems, proprietary operating systems such as Windows support IM for almost two decades years. But there is still a choice, called GraphicsMagick (GM), that covers most of the same functions. So how do you know which one is right for you?

While im putting its history back in 1987, when it was an internal tool, it was developed in DuPont, the first public source code release was 1990. A core package is a collection of separate command lines: animate,compare,display,identify,mogrify, and so on.

Because its command-line interface exposes these features, IM has been used for a long time in scripting, automated processing. It handles server-side picture operations and changes in Web applications like the personal picture library, Wikipedia. Over time, the interface supports many popular languages, opening im to programmers like a system library.

From these understanding, the problem begins. Im is not a library-it is a set of discontinuous command-line execution programs. But more and more programmers are starting to use IM through its language interface, the concept of library gradually entered. Libraries need to consider things like the application Binary interface (ABI), which is stable--but the interactive commands are not required.

Multiple core IM developers are more interested in ABI stability issues, with the result that there is an IM branch that starts a new project, raises priorities, and adds new features relative to ABI and long-term stability. The project became GraphicsMagick, separated from ImageMagick in April 2003.

Indeed, as it says, GM has added fewer features from its inception, compared to the same time line as IM. GM offers the same important tools that--im in Im just added more options over the years.

In order not to overwrite the commands provided by IM, the GM encapsulates all the commands for one: GM. The same IM name as the first parameter of it. For example, in IM with convert photograph.jpg photograph.tiff, GM convert photograph.jpg Photograph.tiff in GM.

Select, select ...

This decision in the GM group means that GM and im can co-exist in a system in a friendly way. So which one do you want to use? It is wise to use IM to handle interactive tasks, using GM on scripts or server-side installations. In fact, many third-party applications and framework habits that rely only on IM now also support gm-examples containing gallery,exhibit ENGINE,TYPO3, and Rmagick.

But in fact you don't like to experience imagemagick stability issues in scripts or Web applications. These complaints escalate, in the controversy that IM-GM produces, IM changing its syntax in a successful release. But how often do you want to update the IM program on a server? Abi changes have a little effect on you this is not enough, especially when you consider that 90% of IM use is limited to inflexible operations, like changing size and proportions.

On the other hand, if you consider that you may need a command line tool to manipulate graphics on X graphics pc, usually because the tool is an option, and GUI graphics editor does not support, or as a batch saves time factor, in very large files (especially high-depth images). I often send digital pictures to professional picture printers, which require special settings for color space and embedded configurations, and in some cases Linux is the only option for converting files to machines with IM. New features and formats like Gimp,krita,cinepaint support are often first sent to IM.
If you are developing an application or tool that takes some time to familiarize yourself with language bindings, for IM and GM, the appropriate binding may be in one, so the choice is obvious. Unless you absolutely doubt that some new IM options are needed, and the GM is not valid, a secure bet is a feature set for GM and allows your app to work with any one.

In the last few years, the development branch of GM has begun to add some new features, and the focus of IM's new contributor is on the stability Suite syntax, so the difference between packages is narrow. Standing at a community point is a place where you don't want to see an unfriendly project produced, even for technical reasons. I don't recommend a day when IM and GM projects merge, but I want to see better how they can cross-pollinate like plants and continue to learn from each other.

ImageMagick or GraphicsMagick?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.