github.com/kaydxh/golang@v0.0.131/pkg/gocv/cgo/third_path/graphics-magick/share/doc/GraphicsMagick/www/ImageMagickObject.html (about)

     1  <?xml version="1.0" encoding="utf-8" ?>
     2  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     3  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
     4  <head>
     5  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     6  <meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
     7  <title>ImageMagickObject</title>
     8  <link rel="stylesheet" href="docutils-articles.css" type="text/css" />
     9  </head>
    10  <body>
    11  
    12  <div class="banner">
    13  <img src="images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
    14  <span class="title">GraphicsMagick</span>
    15  <form action="http://www.google.com/search">
    16  	<input type="hidden" name="domains" value="www.graphicsmagick.org" />
    17  	<input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
    18      <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
    19  </form>
    20  </div>
    21  
    22  <div class="navmenu">
    23  <ul>
    24  <li><a href="index.html">Home</a></li>
    25  <li><a href="project.html">Project</a></li>
    26  <li><a href="download.html">Download</a></li>
    27  <li><a href="README.html">Install</a></li>
    28  <li><a href="Hg.html">Source</a></li>
    29  <li><a href="NEWS.html">News</a> </li>
    30  <li><a href="utilities.html">Utilities</a></li>
    31  <li><a href="programming.html">Programming</a></li>
    32  <li><a href="reference.html">Reference</a></li>
    33  </ul>
    34  </div>
    35  <div class="document" id="imagemagickobject">
    36  <h1 class="title">ImageMagickObject</h1>
    37  
    38  <!-- -*- mode: rst -*- -->
    39  <!-- This text is in reStucturedText format, so it may look a bit odd. -->
    40  <!-- See http://docutils.sourceforge.net/rst.html for details. -->
    41  <div class="section" id="overview">
    42  <h1>Overview</h1>
    43  <p>The <em>ImageMagickObject</em> is a COM+ compatible component that may be
    44  invoked from any language capable of using COM objects. The intended use
    45  is for Windows Scripting Host VBS scripts and Visual Basic, but it can
    46  also be used from C++, ASP, and other languages like Delphi, Perl and PHP.</p>
    47  <p>The strategy with the <em>ImageMagickObject</em> COM+ component is not to the
    48  same as with PerlMagick interface provided with ImageMagick. PerlMagick
    49  is a low level API based system that defines a whole new way of scripting
    50  IM operations. The IM COM+ component simply provides access to the
    51  <a class="reference external" href="convert.html">convert</a>, composite, <a class="reference external" href="mogrify.html">mogrify</a>, <a class="reference external" href="identify.html">identify</a>, and <a class="reference external" href="montage.html">montage</a> tools,
    52  efficiently executing them as part of your process, rather than as
    53  external programs. The way you use it is exactly the same. You pass it a
    54  list of strings including filenames and various options and it does the
    55  job. In fact, you can take any existing batch scripts that use the
    56  command line tools and translate them into the equivalent calls to the
    57  COM+ object in a matter of minutes. Beyond that, there is also a way to
    58  pass in and retrieve images in memory in the form of standard smart
    59  arrays (byte arrays). Samples are provided, to show both the simple and
    60  more elaborate forms of access.</p>
    61  <p><em>GraphicsMagick</em> provides a statically-built ImageMagick object as part of
    62  its &quot;utils&quot; <a class="reference external" href="INSTALL-windows.html">Windows installation package</a>. When this package is
    63  installed, <em>ImageMagickObject</em> and its sample programs are installed to</p>
    64  <pre class="literal-block">
    65  c:\Program Files\GraphicsMagick-1.3-Q16\ImageMagickObject
    66  </pre>
    67  <p>by default (path shown is for the Q:16 build). <em>ImageMagickObject</em> is
    68  registered if the checkbox for &quot;Register ImageMagickObject&quot; is checked at
    69  install time.</p>
    70  <p>You may execute the sample program from the Windows Command Shell like:</p>
    71  <pre class="literal-block">
    72  cscript SimpleTest.vbs
    73  </pre>
    74  <p>Since the <em>GraphicsMagick</em> utility command line parsers are incorporated
    75  within <em>ImageMagickObject</em>, please refer to the command line <a class="reference external" href="utilities.html">utility
    76  documentation</a> to learn how to use it. The sample VBS scripts show how
    77  the object should be called and used and have lots of comments.</p>
    78  <p>For C++ programmers - have a look at the MagickCMD.cpp command line
    79  utility for an example of how to call the object from C++. This is a bit
    80  complex because the object requires a variable size list of BSTR's to
    81  emulate the command line argc, argv style calling conventions of the COM
    82  component which is more complex in C++ then in VBS or VB.</p>
    83  </div>
    84  <div class="section" id="other-goodies">
    85  <h1>Other goodies...</h1>
    86  <p>MagickCMD is a C++ sample, but it can also server as a replacement for
    87  all the other command line utilities in most applications. Instead of
    88  using &quot;<tt class="docutils literal">convert xxxx yyyy</tt>&quot; you can use &quot;<tt class="docutils literal">MagickCMD convert xxxx
    89  yyyy</tt>&quot; instead. MagickCMD calls the COM object to get the job done. This
    90  small tight combination replaces the entire usual binary distribution in
    91  just a few megabytes.</p>
    92  </div>
    93  <div class="section" id="building-imagemagickobject-from-source">
    94  <h1>Building ImageMagickObject From Source</h1>
    95  <p>The source code for <em>ImageMagickObject</em> is available from <em>GraphicsMagick</em>
    96  CVS, or as part of the <em>GraphicsMagick</em> Windows source package. Once the
    97  source code has been retrieved and extracted, the source for
    98  <em>ImageMagickObject</em> may be found hidden in the directory
    99  &quot;<tt class="docutils literal">GraphicsMagick\contrib\win32\ATL7ImageMagickObject</tt>&quot;, however,
   100  <em>GraphicsMagick</em> itself must be built using the &quot;static-multithread&quot;
   101  (VisualStaticMT) build configuration. Building <em>ImageMagickObject</em>
   102  requires Microsoft Visual C++ 7.0 as delivered with Microsoft's Visual
   103  Studio .net package. See the Windows compilation instructions in order to
   104  get <em>GraphicsMagick</em> itself built before building <em>ImageMagickObject</em>.</p>
   105  <p>Once the VisualStaticMT project has been built, <em>ImageMagickObject</em> may
   106  be built by following the procedure:</p>
   107  <pre class="literal-block">
   108  cd  GraphicsMagick\contrib\win32\ATL7ImageMagickObject
   109  BuildImageMagickObject release
   110  </pre>
   111  <p>This procedure assumes that the VisualStaticMT project has been built
   112  using the &quot;release&quot; setting for an optimized build. If the &quot;debug&quot;
   113  setting was used for a debug build, then specify the argument &quot;debug&quot;
   114  instead.</p>
   115  <p>To register the DLL as a COM+ server use</p>
   116  <pre class="literal-block">
   117  regsvr32 /c /s ImageMagickObject.dll
   118  </pre>
   119  <p>To unregister the DLL use</p>
   120  <pre class="literal-block">
   121  regsvr32 /u /s ImageMagickObject.dll
   122  </pre>
   123  <p>The MagickCMD sample program operates similarly to the gm.exe program,
   124  and is a great way to exercise <em>ImageMagickObject</em> to verify that it is
   125  working.</p>
   126  <p>Sometime in the future, MagickCMD may assume the place of gm.exe in the
   127  &quot;utils&quot; distribution in order to decrease the overall package size.</p>
   128  <hr class="docutils" />
   129  <p>Copyright © GraphicsMagick Group 2002 - 2020</p>
   130  </div>
   131  </div>
   132  </body>
   133  </html>