Question about using ImageMagick in a commercial setting

Questions and postings pertaining to the usage of ImageMagick regardless of the interface. This includes the command-line utilities, as well as the C and C++ APIs. Usage questions are like "How do I use ImageMagick to create drop shadows?".
Post Reply
lkc0987
Posts: 2
Joined: 2013-10-08T09:12:52-07:00
Authentication code: 6789

Question about using ImageMagick in a commercial setting

Post by lkc0987 »

Hello,

We are planning on using ImageMagick (specifically, identify.exe) for verifying the integrity of third party produced images. So we had a few questions regarding the same.
  • 1) Is there a way we can run identify.exe in batching mode (like a service say), where it is always available and running, and we just give it a list of files to verify as and when they are created?

    2) What are the policies regarding distribution of these binaries. Specifically we only need identify.exe and its dependencies. Can we use them as is, or should we only be using your installers (which include other tools that we aren't going to be using). If we are to use only your installers, how does the release and posting of updates/patches work for the same?

    3) By using your binaries, are we subject to making our code public?
Thank you for your time. :)
User avatar
magick
Site Admin
Posts: 11064
Joined: 2003-05-31T11:32:55-07:00

Re: Question about using ImageMagick in a commercial setting

Post by magick »

See http://www.imagemagick.org/script/license.php:
  • It does not require you to include the source of the ImageMagick software itself, or of any modifications you may have made to it, in any redistribution you may assemble that includes it;
  • It requires you to include a copy of the license in any redistribution you may make that includes ImageMagick software;
  • It requires you to provide clear attribution to ImageMagick Studio LLC for any distributions that include ImageMagick software.
The start up time of running the identify command line is significantly reduced when using shared libraries rather than with a static build. Ideally you would run identify as a web service with one of the API wrappers such as PerlMagick or iMagick. Apache and the OS would keep the ImageMagick libraries memory-mapped and you won't have the command-line start-up time, so start-up time is significantly reduced.
User avatar
dlemstra
Posts: 1570
Joined: 2013-05-04T15:28:54-07:00
Authentication code: 6789
Contact:

Re: Question about using ImageMagick in a commercial setting

Post by dlemstra »

If your windows application is written in .NET you could also use Magick.NET: https://magick.codeplex.com. It uses the same license as ImageMagick.
.NET + ImageMagick = Magick.NET https://github.com/dlemstra/Magick.NET, @MagickNET, Donate
lkc0987
Posts: 2
Joined: 2013-10-08T09:12:52-07:00
Authentication code: 6789

Re: Question about using ImageMagick in a commercial setting

Post by lkc0987 »

Hey Guys,

Thank you for the prompt replies. Our application is a Java based one, so I was looking to take the JMagick route to achieve the same. Although, there is a small issue that I ran into it with. The JVM that we use to deploy our application is a 64 bit one. The DLL (jmagick.dll) that is provided with the JMagick library is a 32 bit one. I was wondering if there exists a 64 bit version of the same, and if not, is there the source using which we might compile the same?

Thank you. :)
User avatar
dlemstra
Posts: 1570
Joined: 2013-05-04T15:28:54-07:00
Authentication code: 6789
Contact:

Re: Question about using ImageMagick in a commercial setting

Post by dlemstra »

The latest release of JMagick is 5 years old so I suspect the source code is not that up to date. And there have also been a lot of changes to ImageMagick in the last 5 years. I think you are better of using convert.exe/identify.exe.
.NET + ImageMagick = Magick.NET https://github.com/dlemstra/Magick.NET, @MagickNET, Donate
Post Reply