github.com/kaydxh/golang@v0.0.131/pkg/gocv/cgo/third_path/graphics-magick/share/doc/GraphicsMagick/www/README.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>Installing GraphicsMagick</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" /> <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="installing-graphicsmagick"> 36 <h1 class="title">Installing GraphicsMagick</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="contents local topic" id="contents"> 42 <ul class="simple"> 43 <li><a class="reference internal" href="#executive-summary" id="id1">Executive Summary</a></li> 44 <li><a class="reference internal" href="#availability" id="id2">Availability</a></li> 45 <li><a class="reference internal" href="#documentation" id="id3">Documentation</a></li> 46 <li><a class="reference internal" href="#installation" id="id4">Installation</a></li> 47 <li><a class="reference internal" href="#add-on-libraries-programs" id="id5">Add-On Libraries & Programs</a></li> 48 </ul> 49 </div> 50 <div class="section" id="executive-summary"> 51 <h1><a class="toc-backref" href="#id1">Executive Summary</a></h1> 52 <p>GraphicsMagick provides a comprehensive collection of utilities, 53 programming interfaces, and GUIs, to support file format conversion, 54 image processing, and 2D vector rendering.</p> 55 <p>GraphicsMagick is originally based on ImageMagick from ImageMagick Studio 56 (which was originally written by John Cristy at Dupont). The goal of 57 GraphicsMagick is to provide the highest quality product possible while 58 encouraging open and active participation from all interested developers. 59 The GraphicsMagick usage license is designed to allow it to be used for 60 any application, including proprietary or GPLed applications. Please see 61 the file <a class="reference external" href="Copyright.html">Copyright.txt</a> for the GraphicsMagick licence.</p> 62 </div> 63 <div class="section" id="availability"> 64 <h1><a class="toc-backref" href="#id2">Availability</a></h1> 65 <p>The master ftp site for GraphicsMagick distributions is 66 <a class="reference external" href="ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/">ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/</a>. Bandwidth on this 67 site is very limited, so it is recommended to download from SourceForge 68 at <a class="reference external" href="http://sourceforge.net/projects/graphicsmagick/files/">http://sourceforge.net/projects/graphicsmagick/files/</a> if 69 possible.</p> 70 <p>GraphicsMagick is a continual work in progress. The very latest code 71 is available via the Mercurial distributed source control management 72 tool (<a class="reference external" href="https://www.mercurial-scm.org/">https://www.mercurial-scm.org/</a>). GraphicsMagick may be retrieved 73 via the following command:</p> 74 <blockquote> 75 hg clone <a class="reference external" href="http://hg.code.sf.net/p/graphicsmagick/code/">http://hg.code.sf.net/p/graphicsmagick/code/</a> GM</blockquote> 76 <p>Mercurial provides a complete stand-alone repository which contains 77 the full history of the GraphicsMagick project. You may use the 78 cloned repository for your own purposes related to GraphicsMagick 79 (e.g. manage local GraphicsMagick changes), and can easily pull 80 GraphicsMagick updates from the main repository whenever you like.</p> 81 </div> 82 <div class="section" id="documentation"> 83 <h1><a class="toc-backref" href="#id3">Documentation</a></h1> 84 <blockquote> 85 Open the file index.html in a web browser, or refer to the gm(1) manual 86 page. Also read the GraphicsMagick frequently asked questions in the 87 file <a class="reference external" href="FAQ.html">www/FAQ.html</a>.</blockquote> 88 </div> 89 <div class="section" id="installation"> 90 <h1><a class="toc-backref" href="#id4">Installation</a></h1> 91 <blockquote> 92 <p>GraphicsMagick may be compiled from source code for virtually any 93 modern Unix system (including Linux and MacOS X) and Microsoft Windows. 94 Installation instructions may be found in the following files (or their 95 HTML equivalents):</p> 96 <ul> 97 <li><p class="first">Unix / Linux / *BSD / MacOS-X / Cygwin / MinGW:</p> 98 <p><a class="reference external" href="INSTALL-unix.html">Installation on Unix-like systems</a></p> 99 </li> 100 <li><p class="first">Microsoft Windows (Via "setup" style installer or from source code):</p> 101 <p><a class="reference external" href="INSTALL-windows.html">Installation on Microsoft Windows</a></p> 102 </li> 103 </ul> 104 </blockquote> 105 </div> 106 <div class="section" id="add-on-libraries-programs"> 107 <h1><a class="toc-backref" href="#id5">Add-On Libraries & Programs</a></h1> 108 <p>To further enhance the capabilities of GraphicsMagick, you may want to 109 get these programs or libraries. Note that these packages are already 110 integrated into the GraphicsMagick Mercurial repository for use when 111 building under Microsoft Windows:</p> 112 <ul> 113 <li><p class="first">GraphicsMagick requires the BZLIB library from</p> 114 <blockquote> 115 <p><a class="reference external" href="http://www.sourceware.org/bzip2/">http://www.sourceware.org/bzip2/</a></p> 116 </blockquote> 117 <p>to read and write BZip compressed MIFF images.</p> 118 </li> 119 <li><p class="first">GraphicsMagick requires 'ralcgm' from</p> 120 <blockquote> 121 <p><a class="reference external" href="http://www.agocg.ac.uk/train/cgm/ralcgm.htm">http://www.agocg.ac.uk/train/cgm/ralcgm.htm</a></p> 122 </blockquote> 123 <p>to read the Computer Graphics Metafile (CGM) image format. You also 124 need Ghostscript and Ghostscript Fonts (see below).</p> 125 </li> 126 <li><p class="first">GraphicsMagick requires 'dcraw' (version 8.95 or later) from</p> 127 <blockquote> 128 <p><a class="reference external" href="http://www.cybercom.net/~dcoffin/dcraw/">http://www.cybercom.net/~dcoffin/dcraw/</a></p> 129 </blockquote> 130 <p>to read raw images from digital cameras. Dcraw is invoked 131 automatically when used to read files using a common RAW file format 132 extension.</p> 133 </li> 134 <li><p class="first">GraphicsMagick requires 'fig2dev' provided in the transfig package 135 from</p> 136 <blockquote> 137 <p><a class="reference external" href="http://www.xfig.org/">http://www.xfig.org/</a></p> 138 </blockquote> 139 <p>to read the Fig image format. Ghostscript and Ghostscript Fonts (see 140 below) are also required.</p> 141 </li> 142 <li><p class="first">GraphicsMagick requires the FreeType software, version 2.0 or above, 143 available as</p> 144 <blockquote> 145 <p><a class="reference external" href="http://www.freetype.org/">http://www.freetype.org/</a></p> 146 </blockquote> 147 <p>to annotate with TrueType and Postscript Type 1 fonts.</p> 148 </li> 149 <li><p class="first">GraphicsMagick requires Ghostscript software available from</p> 150 <blockquote> 151 <p><a class="reference external" href="http://pages.cs.wisc.edu/~ghost/">http://pages.cs.wisc.edu/~ghost/</a></p> 152 <blockquote> 153 <p>or</p> 154 </blockquote> 155 <p><a class="reference external" href="http://sourceforge.net/projects/ghostscript/">http://sourceforge.net/projects/ghostscript/</a></p> 156 </blockquote> 157 <p>to read the Postscript or the Portable Document Format (PDF).</p> 158 <p>Ghostscript Fonts (also known as "URW Standard postscript fonts 159 (cyrillicized)") are available from</p> 160 <blockquote> 161 <p><a class="reference external" href="https://sourceforge.net/projects/gs-fonts/">https://sourceforge.net/projects/gs-fonts/</a></p> 162 </blockquote> 163 <p>Ghostscript (at the time this text is written in October, 2018) has 164 been observed to have severe security issues when reading untrusted 165 Postscript files (does not apply to PDF). Examples of these severe 166 security issues are being tricked into reading or writing arbitrary 167 files when executing in "-dSAFER" mode, which which is supposed to 168 prevent such access. Users of Ghostscript who may encounter 169 untrusted Postscript files are recommended to assure that all 170 security patches have been applied and it might be necessary to use 171 the latest upstream release.</p> 172 <p>Ghostscript is available for use under both free (GPL) and 173 commercial licenses. We are not lawyers so we can not provide 174 advice as to when the commercial license from Artifex is required. 175 Please make sure that you are aware of Ghostscript licencing and 176 usage terms if you plan to use it in some sort of commercial 177 situation.</p> 178 <p>Ghostscript (release 7.0 and later) may optionally install a library 179 (libgs) under Linux. If this library is installed, GraphicsMagick may 180 be configured to use it. We do <strong>NOT</strong> recommend using this library 181 under Unix type systems. The Ghostscript library does not support 182 concurrency since only one instance of the interpreter is available. 183 Unix systems will obtain better performance from executing Ghostscript as 184 an external process since then multiple interpreters may execute at 185 once on multiple CPU cores.</p> 186 <p>If the Ghostscript library is used, then please be aware that 187 Ghostscript provides its own modified version of libjpeg and 188 libJasper while GraphicsMagick will be using these libraries as 189 provided with the system. If Ghostscript is not using the same 190 libraries, then identically named symbols may be used from the wrong 191 code, causing confusion or a program crash. If conflicts cause JPEG 192 to fail (JPEG returns an error regarding expected structure sizes), 193 it may be necessary to use Ghostscript's copy of libjpeg for 194 GraphicsMagick, and all delegate libraries which depend on libjpeg, 195 or convince Ghostscript to build against an unmodified installed 196 JPEG library (and lose compatibility with some Postscript files).</p> 197 </li> 198 <li><p class="first">GraphicsMagick requires hp2xx available from</p> 199 <blockquote> 200 <p><a class="reference external" href="http://www.gnu.org/software/hp2xx/hp2xx.html">http://www.gnu.org/software/hp2xx/hp2xx.html</a></p> 201 </blockquote> 202 <p>to read the HP-GL image format. Note that HPGL is a plotter file 203 format. HP printers usually accept PCL format rather than HPGL 204 format. Ghostscript (see above) is also required.</p> 205 </li> 206 <li><p class="first">GraphicsMagick requires the lcms library (2.0 or later) available 207 from</p> 208 <blockquote> 209 <p><a class="reference external" href="http://www.littlecms.com/">http://www.littlecms.com/</a></p> 210 </blockquote> 211 <p>to perform ICC CMS color management.</p> 212 </li> 213 <li><p class="first">GraphicsMagick requires Graphviz available from</p> 214 <blockquote> 215 <p><a class="reference external" href="http://www.graphviz.org/">http://www.graphviz.org/</a></p> 216 </blockquote> 217 <p>to read Graphvis 'dot' digraph files (with extension dot). 218 Ghostscript (see above) is also required.</p> 219 </li> 220 <li><p class="first">GraphicsMagick requires html2ps available from</p> 221 <blockquote> 222 <p><a class="reference external" href="http://user.it.uu.se/~jan/html2ps.html">http://user.it.uu.se/~jan/html2ps.html</a></p> 223 </blockquote> 224 <p>to rasterize HTML files. Ghostscript (see above) is also required.</p> 225 </li> 226 <li><p class="first">GraphicsMagick requires the JBIG-Kit software available via 227 HTTP from</p> 228 <blockquote> 229 <p><a class="reference external" href="http://www.cl.cam.ac.uk/~mgk25/jbigkit/">http://www.cl.cam.ac.uk/~mgk25/jbigkit/</a></p> 230 </blockquote> 231 <p>to read and write the JBIG image format.</p> 232 </li> 233 <li><p class="first">GraphicsMagick requires the WebP library version 0.1.99 (or later) 234 available via HTTPS from</p> 235 <blockquote> 236 <p><a class="reference external" href="https://developers.google.com/speed/webp/">https://developers.google.com/speed/webp/</a></p> 237 </blockquote> 238 <p>to read and write the WebP image format.</p> 239 </li> 240 <li><p class="first">GraphicsMagick requires the Independent JPEG Group's software 241 available from</p> 242 <blockquote> 243 <p><a class="reference external" href="http://www.ijg.org/">http://www.ijg.org/</a></p> 244 </blockquote> 245 <p>or libjpeg-turbo available from</p> 246 <blockquote> 247 <p><a class="reference external" href="https://libjpeg-turbo.org/">https://libjpeg-turbo.org/</a> or <a class="reference external" href="https://github.com/libjpeg-turbo/libjpeg-turbo">https://github.com/libjpeg-turbo/libjpeg-turbo</a></p> 248 </blockquote> 249 <p>to read and write the JPEG v1 image format. The 'turbo' releases 250 are much faster than the IJG releases on certain targets (due to 251 using assembly code and other optimizations), but lack the 252 SmartScale JPEG extension introduced in IJG JPEG v8, and the 253 lossless coding mode JPEG extension introduced in IJG JPEG v9 (which 254 is not compatible with standard lossless JPEG!).</p> 255 <p>GraphicsMagick supports both 8-bit and 12-bit JPEG, but 256 unfortunately it does not yet support both at once.</p> 257 <p>Apply this JPEG patch to Independent JPEG Group's (6b release!) 258 source distribution if you want to read lossless jpeg-encoded DICOM 259 (medical) images:</p> 260 <blockquote> 261 <p><a class="reference external" href="ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/ljpeg-6b.tar.gz">ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/ljpeg-6b.tar.gz</a></p> 262 </blockquote> 263 <p>Use of lossless JPEG is not encouraged. Unless you have a requirement 264 to read lossless jpeg-encoded DICOM images, please disregard the patch.</p> 265 </li> 266 <li><p class="first">GraphicsMagick requires the JasPer Project's JasPer library version 267 1.701.0 (or later) available via http from</p> 268 <blockquote> 269 <p><a class="reference external" href="http://www.ece.uvic.ca/~mdadams/jasper/">http://www.ece.uvic.ca/~mdadams/jasper/</a></p> 270 </blockquote> 271 <p>to read and write the JPEG-2000 format. Please note that JasPer 1.900.1 272 may have a problem when used with GraphicsMagick's modules build. To 273 solve this problem, edit the file src/libjasper/base/jas_init.c and 274 comment out the line which invokes atexit().</p> 275 </li> 276 <li><p class="first">On Unix-type systems, Windows/MinGW, and Windows/Cygwin, 277 GraphicsMagick requires libltdl from libtool in order to support 278 building GraphicsMagick with dynamically loadable modules. Libtool 279 is available via anonymous FTP from</p> 280 <blockquote> 281 <p><a class="reference external" href="ftp://ftp.gnu.org/pub/gnu/libtool/">ftp://ftp.gnu.org/pub/gnu/libtool/</a></p> 282 </blockquote> 283 </li> 284 <li><p class="first">GraphicsMagick requires the MPEG utilities from the MPEG Software 285 Simulation Group, which are available via anonymous FTP as</p> 286 <blockquote> 287 <p><a class="reference external" href="ftp://ftp.GraphicsMagick.org/pub/GraphicsMagick/delegates/mpeg2vidcodec_v12.tar.gz">ftp://ftp.GraphicsMagick.org/pub/GraphicsMagick/delegates/mpeg2vidcodec_v12.tar.gz</a></p> 288 </blockquote> 289 <p>to read or write the MPEG image format.</p> 290 </li> 291 <li><p class="first">GraphicsMagick requires the LIBPNG library, version 1.0 or above, from</p> 292 <blockquote> 293 <p><a class="reference external" href="http://www.libpng.org/pub/png/pngcode.html">http://www.libpng.org/pub/png/pngcode.html</a></p> 294 </blockquote> 295 <p>to read or write the PNG, MNG, or JNG image formats. LIBPNG depends 296 upon the ZLIB library (see below).</p> 297 </li> 298 <li><p class="first">GraphicsMagick requires Sam Leffler's TIFF software available via 299 HTTP at</p> 300 <blockquote> 301 <p><a class="reference external" href="http://www.simplesystems.org/libtiff/">http://www.simplesystems.org/libtiff/</a></p> 302 </blockquote> 303 <p>to read the TIFF image format. It in turn optionally requires the 304 JPEG and ZLIB libraries. Libtiff 3.8.2 or later is recommended.</p> 305 </li> 306 <li><p class="first">GraphicsMagick may optionally use the TRIO library from</p> 307 <blockquote> 308 <p><a class="reference external" href="http://sourceforge.net/projects/ctrio/">http://sourceforge.net/projects/ctrio/</a></p> 309 </blockquote> 310 <p>to substitute for the vsnprintf function when the operating system 311 does not provide one. Older operating systems (e.g. Solaris 2.5) 312 may not provide a vsnprintf function. If vsnprintf (or the TRIO 313 replacement) is not used, then vsprintf is used instead, which 314 decreases the security of GraphicsMagick due to possible buffer 315 overrun exploits.</p> 316 </li> 317 <li><p class="first">GraphicsMagick may optionally use the 'tcmalloc' library provided as 318 part of Google gperftools available from</p> 319 <blockquote> 320 <p><a class="reference external" href="https://github.com/gperftools/gperftools">https://github.com/gperftools/gperftools</a></p> 321 </blockquote> 322 <p>to provide enhanced versions of the standard memory allocation 323 facilities. Use of tcmalloc may improve performance for both 324 single-threaded and multi-threaded programs. Benchmarking under 325 Linux shows a doubling of performance with tcmalloc over the default 326 glibc malloc when images are repeatedly allocated, cleared, and 327 de-allocated.</p> 328 </li> 329 <li><p class="first">GraphicsMagick may optionally use the umem memory allocation library 330 which is included in Sun's Solaris operating system, and 331 OpenSolaris/Illumos derivatives, or available from</p> 332 <blockquote> 333 <p><a class="reference external" href="https://labs.omniti.com/trac/portableumem">https://labs.omniti.com/trac/portableumem</a></p> 334 </blockquote> 335 <p>to provide enhanced versions of the standard memory allocation 336 facilities. Use of umem may improve performance for multi-threaded 337 programs and provides access to debugging features that detect memory 338 leaks, buffer overruns, multiple frees, use of uninitialized data, use 339 of freed data, and many other common programming errors.</p> 340 </li> 341 <li><p class="first">GraphicsMagick requires libwmflite from libwmf 0.2.5 (or later) from</p> 342 <blockquote> 343 <p><a class="reference external" href="http://sourceforge.net/projects/wvware/">http://sourceforge.net/projects/wvware/</a></p> 344 </blockquote> 345 <p>to render files in the Windows Meta File (WMF) metafile format 346 (16-bit WMF files only, not 32-bit "EMF"). This is the format 347 commonly used for Windows clipart (available on CD at your local 348 computer or technical book store). WMF support requires the FreeType 349 2 library in order to render TrueType and Postscript fonts.</p> 350 <p>While GraphicsMagick uses the libwmflite (parser) component of the 351 libwmf package which does not depend on any special libraries, the 352 libwmf package as a whole depends on FreeType 2 and either the 353 xmlsoft libxml, or expat libraries. Since GraphicsMagick already uses 354 libxml (for reading SVG and to retrieve files via HTTP or FTP), it is 355 recommended that the options '--without-expat --with-xml' be supplied 356 to libwmf's configure script. If the other features of libwmf are 357 not needed, then the '--disable-heavy' option may be used to only 358 build libwmflite.</p> 359 <p>GraphicsMagick's WMF renderer provides some of the finest WMF 360 rendering available due its use of antialiased drawing algorithms. 361 You may select a background color or texture image to render on. For 362 example, "-background '#ffffffff'" renders on a transparent 363 background while "-texture plasma:fractal" renders on a fractal image.</p> 364 <blockquote> 365 <p>A free set of Microsoft Windows fonts may be retrieved from 366 <a class="reference external" href="http://sourceforge.net/projects/corefonts/">http://sourceforge.net/projects/corefonts/</a>. Note that the license 367 for these fonts requires that they be distributed in the original 368 .exe form, but the Linux folks have found ways to deal with that on 369 non-Windows systems.</p> 370 </blockquote> 371 </li> 372 <li><p class="first">GraphicsMagick requires an X server for the 'display', 'animate', and 373 'import' functions to work properly. Unix systems usually provide an X 374 server as part of their standard installation. For MacOS-X, X11 is a 375 system install time option.</p> 376 <p>A free X server for Microsoft Windows is included as part of 377 Cygwin and may be selected from the Cygwin installer. Cygwin is 378 available from</p> 379 <blockquote> 380 <p><a class="reference external" href="http://www.cygwin.com/">http://www.cygwin.com/</a></p> 381 </blockquote> 382 <p>There is a nearly free X server available for Windows and Macintosh at</p> 383 <blockquote> 384 <p><a class="reference external" href="http://www.microimages.com/downloads/mix/">http://www.microimages.com/downloads/mix/</a></p> 385 </blockquote> 386 </li> 387 <li><p class="first">GraphicsMagick requires libxml2 available from</p> 388 <blockquote> 389 <p><a class="reference external" href="http://xmlsoft.org/">http://xmlsoft.org/</a></p> 390 </blockquote> 391 <p>to read the SVG image format and to retrieve files from over a 392 network via FTP and HTTP.</p> 393 </li> 394 <li><p class="first">GraphicsMagick requires the liblzma library from XZ Utils available from</p> 395 <blockquote> 396 <p><a class="reference external" href="http://www.tukaani.org/xz/">http://www.tukaani.org/xz/</a></p> 397 </blockquote> 398 <p>to support TIFF with LZMA compression and future LZMA-compression 399 features (yet to be developed). The utilities from this package are 400 also necessary in order to decompress GraphicsMagick packages 401 distributed with ".xz" or ".lzma" extensions.</p> 402 </li> 403 <li><p class="first">GraphicsMagick requires the ZLIB library from</p> 404 <blockquote> 405 <p><a class="reference external" href="http://www.zlib.net/">http://www.zlib.net/</a></p> 406 </blockquote> 407 <p>to read or write the PNG or Zip compressed MIFF images.</p> 408 </li> 409 <li><p class="first">GraphicsMagick requires the Zstd library from</p> 410 <blockquote> 411 <p><a class="reference external" href="https://facebook.github.io/zstd/">https://facebook.github.io/zstd/</a></p> 412 </blockquote> 413 <p>to read or write Zstd compressed TIFF images. In the future it is 414 likely that other purposes will be found for Zstd.</p> 415 </li> 416 </ul> 417 <hr class="docutils" /> 418 <p>Copyright © GraphicsMagick Group 2002 - 2020</p> 419 </div> 420 </div> 421 </body> 422 </html>