diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /systems/doc/dvipng |
Initial commit
Diffstat (limited to 'systems/doc/dvipng')
-rw-r--r-- | systems/doc/dvipng/dvipng.html | 1523 | ||||
-rw-r--r-- | systems/doc/dvipng/dvipng.pdf | bin | 0 -> 220307 bytes |
2 files changed, 1523 insertions, 0 deletions
diff --git a/systems/doc/dvipng/dvipng.html b/systems/doc/dvipng/dvipng.html new file mode 100644 index 0000000000..5125d4c479 --- /dev/null +++ b/systems/doc/dvipng/dvipng.html @@ -0,0 +1,1523 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> +<!-- Created by GNU Texinfo 6.6, http://www.gnu.org/software/texinfo/ --> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<title>A DVI-to-PNG translator</title> + +<meta name="description" content="A DVI-to-PNG translator"> +<meta name="keywords" content="A DVI-to-PNG translator"> +<meta name="resource-type" content="document"> +<meta name="distribution" content="global"> +<meta name="Generator" content="makeinfo"> +<link href="#Top" rel="start" title="Top"> +<link href="#Index" rel="index" title="Index"> +<link href="#SEC_Contents" rel="contents" title="Table of Contents"> +<link href="http://tug.org/texinfohtml" rel="up" title="(dir)"> +<style type="text/css"> +<!-- +a.summary-letter {text-decoration: none} +blockquote.indentedblock {margin-right: 0em} +div.display {margin-left: 3.2em} +div.example {margin-left: 3.2em} +div.lisp {margin-left: 3.2em} +kbd {font-style: oblique} +pre.display {font-family: inherit} +pre.format {font-family: inherit} +pre.menu-comment {font-family: serif} +pre.menu-preformatted {font-family: serif} +span.nolinebreak {white-space: nowrap} +span.roman {font-family: initial; font-weight: normal} +span.sansserif {font-family: sans-serif; font-weight: normal} +ul.no-bullet {list-style: none} +--> +</style> + + +</head> + +<body lang="en"> +<h1 class="settitle" align="center">A DVI-to-PNG translator</h1> + + + + + + + +<span id="SEC_Contents"></span> +<h2 class="contents-heading">Table of Contents</h2> + +<div class="contents"> + +<ul class="no-bullet"> + <li><a id="toc-Introduction-1" href="#Introduction">1 Introduction</a></li> + <li><a id="toc-Installation-1" href="#Installation">2 Installation</a> + <ul class="no-bullet"> + <li><a id="toc-Prerequisites-1" href="#Prerequisites">2.1 Prerequisites</a></li> + <li><a id="toc-Configure-1" href="#Configure">2.2 Configure</a></li> + <li><a id="toc-Build_002finstall-1" href="#Build_002finstall">2.3 Build/install</a></li> + <li><a id="toc-Installation-outside-the-texmf-tree-1" href="#Installation-outside-the-texmf-tree">2.4 Installation outside the texmf tree</a></li> + <li><a id="toc-Installation-for-non_002dprivileged-users" href="#Advice-for-non_002dprivileged-users">2.5 Installation for non-privileged users</a></li> + </ul></li> + <li><a id="toc-Basic-usage-of-dvipng" href="#Basic-usage">3 Basic usage of dvipng</a></li> + <li><a id="toc-Command_002dline-options-1" href="#Command_002dline-options">4 Command-line options</a> + <ul class="no-bullet"> + <li><a id="toc-Option-summary-1" href="#Option-summary">4.1 Option summary</a></li> + <li><a id="toc-Option-details-1" href="#Option-details">4.2 Option details</a></li> + </ul></li> + <li><a id="toc-Graphics-1" href="#Graphics">5 Graphics</a> + <ul class="no-bullet"> + <li><a id="toc-Encapsulated-PostScript-1" href="#Encapsulated-PostScript">5.1 Encapsulated PostScript</a></li> + <li><a id="toc-Bitmapped-graphics-1" href="#Bitmapped-graphics">5.2 Bitmapped graphics</a></li> + <li><a id="toc-Raw-PostScript-1" href="#Raw-PostScript">5.3 Raw PostScript</a></li> + </ul></li> + <li><a id="toc-Color-1" href="#Color">6 Color</a> + <ul class="no-bullet"> + <li><a id="toc-Color-specifications-1" href="#Color-specifications">6.1 Color specifications</a></li> + <li><a id="toc-Color-specials-1" href="#Color-specials">6.2 Color specials</a></li> + </ul></li> + <li><a id="toc-Diagnosing-problems-1" href="#Diagnosing-problems">7 Diagnosing problems</a> + <ul class="no-bullet"> + <li><a id="toc-Contact-information-1" href="#Contact-information">7.1 Contact information</a></li> + <li><a id="toc-Debug-options-1" href="#Debug-options">7.2 Debug options</a></li> + </ul></li> + <li><a id="toc-Credits-1" href="#Credits">8 Credits</a></li> + <li><a id="toc-Copying-1" href="#Copying">9 Copying</a></li> + <li><a id="toc-Index-1" href="#Index">Index</a></li> +</ul> +</div> + + +<span id="Top"></span><div class="header"> +<p> +Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Up: <a href="http://tug.org/texinfohtml" accesskey="u" rel="up">(dir)</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="dvipng"></span><h1 class="top">dvipng</h1> + +<p>This manual documents dvipng, a program to translate a DVI (DeVice +Independent) file into PNG (Portable Network Graphics). +</p> +<p>This file documents dvipng version 1.16 +</p> +<p>Corrections or perhaps rewrites of sections are <em>very welcome</em>. +</p> +<p>Jan-Åke Larsson +</p> + +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Introduction" accesskey="1">Introduction</a></td><td> </td><td align="left" valign="top">Introduction +</td></tr> +<tr><td align="left" valign="top">• <a href="#Installation" accesskey="2">Installation</a></td><td> </td><td align="left" valign="top">How to compile and install dvipng +</td></tr> +<tr><td align="left" valign="top">• <a href="#Basic-usage" accesskey="3">Basic usage</a></td><td> </td><td align="left" valign="top">First things first +</td></tr> +<tr><td align="left" valign="top">• <a href="#Command_002dline-options" accesskey="4">Command-line options</a></td><td> </td><td align="left" valign="top">Advanced usage +</td></tr> +<tr><td align="left" valign="top">• <a href="#Graphics" accesskey="5">Graphics</a></td><td> </td><td align="left" valign="top">Including PostScript and/or bitmaps +</td></tr> +<tr><td align="left" valign="top">• <a href="#Color" accesskey="6">Color</a></td><td> </td><td align="left" valign="top">Using color with dvipng +</td></tr> +<tr><td align="left" valign="top">• <a href="#Diagnosing-problems" accesskey="7">Diagnosing problems</a></td><td> </td><td align="left" valign="top">Problems? +</td></tr> +<tr><td align="left" valign="top">• <a href="#Credits" accesskey="8">Credits</a></td><td> </td><td align="left" valign="top">People who have contributed +</td></tr> +<tr><td align="left" valign="top">• <a href="#Copying" accesskey="9">Copying</a></td><td> </td><td align="left" valign="top">GNU Lesser General Public License +</td></tr> +<tr><td align="left" valign="top">• <a href="#Index">Index</a></td><td> </td><td align="left" valign="top">General index +</td></tr> +</table> + + + +<hr> +<span id="Introduction"></span><div class="header"> +<p> +Next: <a href="#Installation" accesskey="n" rel="next">Installation</a>, Previous: <a href="#Top" accesskey="p" rel="prev">Top</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Introduction-1"></span><h2 class="chapter">1 Introduction</h2> + + + + +<p>This program makes PNG and/or GIF graphics from DVI files as obtained +from TeX and its relatives. +</p> +<p>If GIF support is enabled, GIF output is chosen by using the +‘<samp>dvigif</samp>’ binary or with the ‘<samp>--gif</samp>’ option. +</p> + +<p>It is intended to produce anti-aliased screen-resolution images as fast +as is possible. The target audience is people who need to generate and +regenerate many images again and again. The primary target is the +preview-latex (X)Emacs package, a package to preview formulas from +within (X)Emacs. Yes, you get to see your formulas in the (X)Emacs +buffer, see <a href="http://www.gnu.org/software/auctex/preview-latex.html">http://www.gnu.org/software/auctex/preview-latex.html</a>. +</p> +<p>Another example is WeBWorK, an internet-based method for delivering +homework problems to students over the internet, giving students +instant feedback as to whether or not their answers are correct, see +<a href="http://webwork.math.rochester.edu">http://webwork.math.rochester.edu</a>. +</p> +<p>A more recent addition to the dvipng-using applications out there is +MediaWiki, the software behind Wikipedia and many other wikis out +there. Dvipng is used to render mathematical formulae from version +1.8.0 of MediaWiki, see <a href="http://www.mediawiki.org">http://www.mediawiki.org</a>. +</p> +<p>Other applications may also benefit, like web applications as latex2html +and WYSIWYG editors like LyX. +</p> + +<p>The benefits of ‘<samp>dvipng</samp>’/‘<samp>dvigif</samp>’ include +</p> +<ul> +<li> Speed. It is a very fast bitmap-rendering code for DVI files, which +makes it suitable for generating large amounts of images on-the-fly, +as needed in preview-latex, WeBWorK and others. + +</li><li> It does not read the postamble, so it can be started before TeX +finishes. There is a ‘<samp>--follow</samp>’ switch that makes dvipng wait at +end-of-file for further output, unless it finds the POST marker that +indicates the end of the DVI. + +</li><li> Interactive query of options. dvipng can read options interactively +through stdin, and all options are usable. It is even possible to change +the input file through this interface. + +</li><li> Supports PK, VF, PostScript Type1, and TrueType fonts, subfonts (i.e., +as used in CJK-LaTeX), color specials, and inclusion of PostScript, +PNG, JPEG or GIF images. + +</li><li> and more... + +</li></ul> + + +<hr> +<span id="Installation"></span><div class="header"> +<p> +Next: <a href="#Basic-usage" accesskey="n" rel="next">Basic usage</a>, Previous: <a href="#Introduction" accesskey="p" rel="prev">Introduction</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Installation-1"></span><h2 class="chapter">2 Installation</h2> + +<span id="index-configuration_002c-of-dvipng"></span> +<span id="index-compilation"></span> +<span id="index-installation_002c-of-dvipng"></span> + + + +<p>Installing dvipng should be simple: merely <code>./configure</code>, +<code>make</code>, and <code>make install</code>. +</p> +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Prerequisites" accesskey="1">Prerequisites</a></td><td> </td><td align="left" valign="top"> +</td></tr> +<tr><td align="left" valign="top">• <a href="#Configure" accesskey="2">Configure</a></td><td> </td><td align="left" valign="top"> +</td></tr> +<tr><td align="left" valign="top">• <a href="#Build_002finstall" accesskey="3">Build/install</a></td><td> </td><td align="left" valign="top"> +</td></tr> +<tr><td align="left" valign="top">• <a href="#Installation-outside-the-texmf-tree" accesskey="4">Installation outside the texmf tree</a></td><td> </td><td align="left" valign="top"> +</td></tr> +<tr><td align="left" valign="top">• <a href="#Advice-for-non_002dprivileged-users" accesskey="5">Advice for non-privileged users</a></td><td> </td><td align="left" valign="top"> +</td></tr> +</table> + +<hr> +<span id="Prerequisites"></span><div class="header"> +<p> +Next: <a href="#Configure" accesskey="n" rel="next">Configure</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Prerequisites-1"></span><h3 class="section">2.1 Prerequisites</h3> + +<ul> +<li> The GD Graphics Draw library, libgd + +<p>The drawing library ‘<samp>libgd</samp>’ is necessary, and is downloadable at +<a href="https://bitbucket.org/libgd/gd-libgd/downloads">https://bitbucket.org/libgd/gd-libgd/downloads</a>, and there are +binary packages for most operating systems from their respective +distributors. In any case, the library installs using ‘<samp>autoconf</samp>’ so +it should not be difficult for you to install it from source, and then +proceed with installing dvipng. +</p> +</li><li> The path-searching library kpathsea + +<p>Kpathsea is most likely included in your LaTeX installation, but it +may happen that ./configure does not find it; see below. If you do not +have it, download it from <a href="http://www.ctan.org">http://www.ctan.org</a> and compile it. +I have no experience with this, so I cannot help much here. +</p> +</li><li> The font-rendering library FreeType 2 + +<p>While not strictly necessary, a recent FreeType 2 is recommended since +dvipng currently will produce better-quality images when this library is +available. To take advantage of this, you should have at least FreeType +2.1.9. +</p> +<p>FreeType 2 will enable direct support for PostScript and TrueType fonts, +so that dvipng will not need to generate bitmapped variants on disk of +the TeX fonts since modern TeX distributions include PostScript +versions of them. Then, you can render images at different (and unusual) +resolutions without cluttering the disk with lots of bitmapped fonts. +</p> +<p>Finally, it will enable subfont support in dvipng. That is, if you want +to render CJK-LaTeX characters, you must have FreeType 2 installed. +</p> +</li><li> libpng and libz + +<p>To be able to compress and write PNG files to disk, dvipng (or really +libgd) uses libpng which in turn uses libz. These should be available on +any modern system, if not, download them and install them. +</p> +</li><li> The <code>texinfo</code> package + +<p>This is needed for building the documentation. +</p></li></ul> + +<hr> +<span id="Configure"></span><div class="header"> +<p> +Next: <a href="#Build_002finstall" accesskey="n" rel="next">Build/install</a>, Previous: <a href="#Prerequisites" accesskey="p" rel="prev">Prerequisites</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Configure-1"></span><h3 class="section">2.2 Configure</h3> + +<p>The first step is to configure the source code, telling it where +various files will be. To do so, run +</p> +<div class="example"> +<pre class="example">./configure <var>options</var> +</pre></div> + +<p>(Note: if you have fetched dvipng from CVS rather than a regular +release, you will have to first generate <samp>./configure</samp> by running +<code>autoconf</code> 2.53 or later.) +</p> +<p>On many machines, you will not need to specify any options, but if +<code>configure</code> cannot determine something on its own, you’ll need to +help it out. For a list of the options type +</p> +<div class="example"> +<pre class="example">./configure --help +</pre></div> + +<p>On some machines, the libraries will be installed in directories that +are not in the linker’s search path. This will generate an error when +running <samp>./configure</samp>, indicating that it cannot find libgd or +libkpathsea (most likely). You then need to specify the path to the +respective library’s object files. They are typically called e.g., +<samp>libgd.a</samp> or <samp>libgd.so</samp>. If they are located in e.g., +<samp>/sw/local/lib</samp>, do +</p> +<div class="example"> +<pre class="example">./configure LDFLAGS=-L/sw/local/lib +</pre></div> + +<p>If the library is available as a shared object file (<samp>.so</samp>), the +runtime linker may also need to be told where to find the library, +then use +</p> +<div class="example"> +<pre class="example">./configure LDFLAGS='-L/sw/local/lib -R/sw/local/lib' +</pre></div> + +<p>When either of these is necessary, it is likely that the C header +files are also installed in directories that are not in the C +preprocessor’s search path. This will also generate an error when +running <samp>./configure</samp>, indicating that it cannot find e.g., +<samp>gd.h</samp> or <samp>kpathsea.h</samp> (most likely). You then need to +specify the path to the respective library’s C header files. If they +are located in e.g., <samp>/sw/local/include</samp>, do +</p> +<div class="example"> +<pre class="example">./configure CPPFLAGS=-I/sw/local/include +</pre></div> + +<p>On my SUN Solaris workstation, I had to combine this into +</p> +<div class="example"> +<pre class="example">./configure CPPFLAGS='-I/sw/local/include -I/sw/tex/teTeX/1.0/include'\ + LDFLAGS='-L/sw/local/lib -R/sw/local/lib -L/sw/tex/teTeX/1.0/lib/' +</pre></div> + +<p>where the backslash denotes a continuation of the line. +</p> +<hr> +<span id="Build_002finstall"></span><div class="header"> +<p> +Next: <a href="#Installation-outside-the-texmf-tree" accesskey="n" rel="next">Installation outside the texmf tree</a>, Previous: <a href="#Configure" accesskey="p" rel="prev">Configure</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Build_002finstall-1"></span><h3 class="section">2.3 Build/install</h3> + +<p>Once <samp>configure</samp> has been run, simply enter +</p> +<div class="example"> +<pre class="example">make +</pre></div> + +<p>at the prompt to compile the C code, and build the documentation files. +To install the files into the locations chosen earlier, type +</p> +<div class="example"> +<pre class="example">make install +</pre></div> + +<p>You may need special privileges to install, e.g., if you are installing +into system directories. +</p> +<hr> +<span id="Installation-outside-the-texmf-tree"></span><div class="header"> +<p> +Next: <a href="#Advice-for-non_002dprivileged-users" accesskey="n" rel="next">Advice for non-privileged users</a>, Previous: <a href="#Build_002finstall" accesskey="p" rel="prev">Build/install</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Installation-outside-the-texmf-tree-1"></span><h3 class="section">2.4 Installation outside the texmf tree</h3> + +<p>In some cases, a dvipng binary installed outside the texmf tree will +not be able to find virtual fonts, or the PostScript font maps +(normally used by dvips). This may be because <em>only</em> +$SELFAUTOLOC, $SELFAUTODIR, and $SELFAUTOPARENT are used in the texmf +tree configuration file ‘<samp>texmf.cnf</samp>’. If so, give the switch +‘<samp>--enable-selfauto-set</samp>’ to ‘<samp>./configure</samp>’. This will make +dvipng adjust these three internally so that kpathsea thinks that +dvipng <em>is</em> installed in the texmf tree. +</p> +<hr> +<span id="Advice-for-non_002dprivileged-users"></span><div class="header"> +<p> +Previous: <a href="#Installation-outside-the-texmf-tree" accesskey="p" rel="prev">Installation outside the texmf tree</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Installation-for-non_002dprivileged-users"></span><h3 class="section">2.5 Installation for non-privileged users</h3> + +<p>Often people without system administration privileges want to install +software for their private use. In that case you need to specify more +options to the <samp>configure</samp> script, usually this is done by using +the ‘<samp>--prefix</samp>’ option to the <samp>configure</samp> script, and let it +point to the personal home directory. In that way, resulting binaries +will be installed under the <samp>bin</samp> subdirectory of your home +directory, manual pages under <samp>man</samp> and so on. That way, it is +reasonably easy to maintain a bunch of additional packages, since the +prefix argument is supported by most <samp>configure</samp> scripts. +</p> +<p>You’ll have to add something like <samp>/home/myself/bin</samp> to your +<code>PATH</code> shell variable, if it isn’t there already, and similarly +set the <code>INFOPATH</code> and <code>MANPATH</code> variables to be able to +access the documentation. +</p> + +<hr> +<span id="Basic-usage"></span><div class="header"> +<p> +Next: <a href="#Command_002dline-options" accesskey="n" rel="next">Command-line options</a>, Previous: <a href="#Installation" accesskey="p" rel="prev">Installation</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Basic-usage-of-dvipng"></span><h2 class="chapter">3 Basic usage of dvipng</h2> + +<span id="index-invoking-dvipng"></span> + +<p>To use dvipng at its simplest, simply type +</p> +<div class="example"> +<pre class="example">dvipng foo +</pre></div> + +<p>where <samp>foo.dvi</samp> is the output of TeX that you want to convert to +PNG format. If there are four pages in <samp>foo.dvi</samp>, those pages will +be output as <samp>foo1.png</samp>, <samp>foo2.png</samp>, <samp>foo3.png</samp>, and +<samp>foo4.png</samp>, respectively. +</p> +<p>If you have enabled the PostScript font support (via FreeType), +fonts will be rendered as they are needed. Otherwise, dvipng will use +bitmapped (PK) fonts, and if you use PK fonts that have not been used on +your system before, they may be automatically generated; this process +can take a few minutes, so progress reports appear by default. The next +time the same font is used, it will have been saved on disk, so +rendering will go much faster. (If dvipng tries to endlessly generate +the same fonts over and over again, something is wrong. See <a href="https://tug.org/texinfohtml/kpathsea.html#Unable-to-generate-fonts">Unable to +generate fonts</a> in <cite>Kpathsea</cite>.) +</p> +<p>Many options are available (see the next section). For a brief summary +of available options, just type +</p> +<div class="example"> +<pre class="example">dvipng --help +</pre></div> + +<hr> +<span id="Command_002dline-options"></span><div class="header"> +<p> +Next: <a href="#Graphics" accesskey="n" rel="next">Graphics</a>, Previous: <a href="#Basic-usage" accesskey="p" rel="prev">Basic usage</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Command_002dline-options-1"></span><h2 class="chapter">4 Command-line options</h2> + +<span id="index-command_002dline-options"></span> +<span id="index-options_002c-dvipng"></span> + +<p>dvipng has a plethora of command line options. Reading through this +section will give a good idea of the capabilities of the driver. +</p> +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Option-summary" accesskey="1">Option summary</a></td><td> </td><td align="left" valign="top">Quick listing, from dvipng –help. +</td></tr> +<tr><td align="left" valign="top">• <a href="#Option-details" accesskey="2">Option details</a></td><td> </td><td align="left" valign="top">More information about each option. +</td></tr> +</table> + + +<hr> +<span id="Option-summary"></span><div class="header"> +<p> +Next: <a href="#Option-details" accesskey="n" rel="next">Option details</a>, Up: <a href="#Command_002dline-options" accesskey="u" rel="up">Command-line options</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Option-summary-1"></span><h3 class="section">4.1 Option summary</h3> + +<span id="index-options_002c-summary"></span> +<p>Here is a handy summary of the options; it is printed out when you run +dvipng with no arguments or with the standard ‘<samp>--help</samp>’ option. +</p> +<div class="example"> +<pre class="example">This is ./dvipng 1.16 Copyright 2002-2015, 2019 Jan-Ake Larsson + +Usage: ./dvipng [OPTION]... FILENAME[.dvi] +Options are chosen to be similar to dvips' options where possible: + -d # Debug (# is the debug bitmap, 1 if not given) + -D # Output resolution + -l # Last page to be output + -o f Output file, '%d' is pagenumber + -O c Image offset + -p # First page to be output + -pp #,#.. Page list to be output + -q* Quiet operation + -T c Image size (also accepts '-T bbox' and '-T tight') + -v* Verbose operation + - Interactive query of options + +These do not correspond to dvips options: + -bd # Transparent border width in dots + -bd s Transparent border fallback color (TeX-style color) + -bg s Background color (TeX-style color or 'Transparent') + --depth* Output the image depth on stdout + --dvinum* Use TeX page numbers in output filenames + -fg s Foreground color (TeX-style color) + --follow* Wait for data at end-of-file + --freetype* FreeType font rendering (preferred, default on) + --gamma # Control color interpolation + --gif Output GIF images (dvigif default) + --height* Output the image height on stdout + --nogs* Don't use ghostscript for PostScript specials + --nogssafer* Don't use -dSAFER in ghostscript calls + --norawps* Don't convert raw PostScript specials + --palette* Force palette output + --picky When a warning occurs, don't output image + --png Output PNG images (dvipng default) + --strict When a warning occurs, exit + --truecolor* Truecolor output + -Q # Quality (PK subsampling) + --width* Output the image width on stdout + -z # PNG compression level + + # = number f = file s = string * = suffix, '0' to turn off + c = comma-separated dimension pair (e.g., 3.2in,-32.1cm) + +</pre></div> + + +<hr> +<span id="Option-details"></span><div class="header"> +<p> +Previous: <a href="#Option-summary" accesskey="p" rel="prev">Option summary</a>, Up: <a href="#Command_002dline-options" accesskey="u" rel="up">Command-line options</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Option-details-1"></span><h3 class="section">4.2 Option details</h3> + +<span id="index-option_002c-details-of"></span> + +<p>Many of the parameterless options listed here can be turned off by +suffixing the option with a zero (‘<samp>0</samp>’); for instance, to turn off +page reversal, use ‘<samp>-r0</samp>’. Such options are marked with a trailing +‘<samp>*</samp>’. +</p> +<dl compact="compact"> +<dt>‘<samp>-</samp>’</dt> +<dd><span id="index-options_002c-reading-from-standard-input"></span> +<span id="index-standard-input_002c-reading-options-from"></span> +<p>Read additional options from standard input after processing the command +line. +</p> +</dd> +<dt>‘<samp>--help</samp>’</dt> +<dd><p>Print a usage message and exit. +</p> +</dd> +<dt>‘<samp>--version</samp>’</dt> +<dd><p>Print the version number and exit. +</p> +</dd> +<dt>‘<samp>-bd <var>num</var></samp>’</dt> +<dt>‘<samp>-bd <var>color_spec</var></samp>’</dt> +<dt>‘<samp>-bd '<var>num</var> <var>color_spec</var>'</samp>’</dt> +<dd><span id="index-transparent-border-width"></span> +<span id="index-transparent-border-fallback-color"></span> +<p>Set the pixel width of the transparent border (default 0). Using this +option will make the image edges transparent, but it only affects pixels +with the background color. Giving a <var>color_spec</var> will set the +fallback color, to be used in viewers that cannot handle transparency +(the default is the background color). The color spec should be in +TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’. Setting the +fallback color makes the default border width 1 px. See <a href="#Color">Color</a>. +</p> +</dd> +<dt>‘<samp>--bdpi <var>num</var></samp>’</dt> +<dd><span id="index-base-resolution_002c-setting"></span> +<p>This option only has an effect when using bitmapped (PK) fonts. The +option sets the base (Metafont) resolution, both horizontal and +vertical, to <var>num</var> dpi (dots per inch). This option is necessary +when manually selecting Metafont mode with the –mode option (see +below). +</p> +</dd> +<dt>‘<samp>-bg <var>color_spec</var></samp>’</dt> +<dd><span id="index-background-color-_0028option_0029"></span> +<p>Choose background color for the images. This option will be ignored if +there is a background color \special in the DVI. The color spec should +be in TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’. You can +also specify ’Transparent’ or ’transparent’ which will give you a +transparent background with the normal background as a fallback color. A +capitalized ’Transparent’ will give a full-alpha transparency, while an +all-lowercase ’transparent’ will give a simple fully transparent +background with non-transparent antialiased pixels. The latter would be +suitable for viewers who cannot cope with a true alpha channel. GIF +images do not support full alpha transparency, so in case of GIF output, +both variants will use the latter behaviour. See <a href="#Color">Color</a>. +</p> +</dd> +<dt>‘<samp>-d <var>num</var></samp>’</dt> +<dd><span id="index-debugging"></span> +<p>Set the debug flags, showing what dvipng (thinks it) is doing. This will +work unless dvipng has been compiled without the <code>DEBUG</code> option +(not recommended). Set the flags as you need them, use ‘<samp>-d -1</samp>’ as +the first option for maximum output. See <a href="#Debug-options">Debug options</a>. +</p> +</dd> +<dt>‘<samp>-D <var>num</var></samp>’</dt> +<dd><span id="index-output-resolution_002c-setting"></span> +<p>Set the output resolution, both horizontal and vertical, to <var>num</var> +dpi (dots per inch). +</p> +<p>One may want to adjust this to fit a certain text font size (e.g., on +a web page), and for a text font height of <var>font_px</var> pixels (in +Mozilla) the correct formula is +</p><div class="example"> +<pre class="example"><var>dpi</var> = <var>font_px</var> * 72.27 / 10 [px * TeXpt/in / TeXpt] +</pre></div> +<p>The last division by ten is due to the standard font height 10pt in +your document, if you use 12pt, divide by 12. Unfortunately, some +proprietary browsers have font height in pt (points), not pixels. You +have to rescale that to pixels, using the screen resolution (default +is usually 96 dpi) which means the formula is +</p><div class="example"> +<pre class="example"><var>font_px</var> = <var>font_pt</var> * 96 / 72 [pt * px/in / (pt/in)] +</pre></div> +<p>On some high-res screens, the value is instead 120 dpi. Good luck! +</p> +</dd> +<dt>‘<samp>--depth*</samp>’</dt> +<dd><span id="index-baseline-reporting"></span> +<span id="index-depth-reporting"></span> +<p>Report the depth of the image. This only works reliably when the +LaTeX style <samp>preview.sty</samp> from preview-latex is used with +the ‘<samp>active</samp>’ option. It reports the number of pixels from the +bottom of the image to the baseline of the image. This can be used for +vertical positioning of the image in, e.g., web documents, where one +would use (Cascading StyleSheets 1) +</p><div class="example"> +<pre class="example"><IMG SRC="<var>filename.png</var>" STYLE="vertical-align: -<var>depth</var>px"> +</pre></div> +<p>The depth is a negative offset in this case, so the minus sign is +necessary, and the unit is pixels (px). +</p> +</dd> +<dt>‘<samp>--dvinum*</samp>’</dt> +<dd><p>Set this option to make the output page number be the TeX page +numbers rather than the physical page number. See the ‘<samp>-o</samp>’ switch. +</p> + +</dd> +<dt>‘<samp>-fg <var>color_spec</var></samp>’</dt> +<dd><span id="index-foreground-color-_0028option_0029"></span> +<p>Choose foreground color for the images. This option will be ignored if +there is a foreground color \special in the DVI. The color spec should +be in TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’. +See <a href="#Color">Color</a>. +</p> +</dd> +<dt>‘<samp>--follow*</samp>’</dt> +<dd><span id="index-follow-mode"></span> +<p>Wait for data at end-of-file. One of the benefits of dvipng is that it +does not read the postamble, so it can be started before TeX +finishes. This switch makes dvipng wait at end-of-file for further +output, unless it finds the POST marker that indicates the end of the +DVI. This is similar to ‘<samp>tail -f</samp>’ but for DVI-to-PNG conversion. +</p> +</dd> +<dt>‘<samp>--freetype*</samp>’</dt> +<dd><span id="index-FreeType-font-rendering"></span> +<p>Enable/disable FreeType font rendering (default on). This option is +available if the FreeType2 font library was present at compilation time. +If this is the case, dvipng will have direct support for PostScript +Type1 and TrueType fonts internally, rather than using ‘<samp>gsftopk</samp>’ +for rendering the fonts. If you have PostScript versions of Computer +Modern installed, there will be no need to generate bitmapped (PK) +variants on disk of these. Then, you can render images at different (and +unusual) resolutions without cluttering the disk with lots of bitmapped +fonts. +One reason to disable FreeType font rendering would be to generate +identical output on different platforms, since FreeType uses the native +renderer and therefore can give slightly different output on each platform. +</p> +</dd> +<dt>‘<samp>--gamma <var>num</var></samp>’</dt> +<dd><span id="index-gamma"></span> +<span id="index-dark-fonts"></span> +<span id="index-light-fonts"></span> +<span id="index-fuzzy-images"></span> +<p>Control the interpolation of colors in the greyscale anti-aliasing +color palette. Default value is 1.0. For 0 < <var>num</var> < 1, the +fonts will be lighter (more like the background), and for <var>num</var> > +1, the fonts will be darker (more like the foreground). +</p> +</dd> +<dt>‘<samp>--gif*</samp>’</dt> +<dd><span id="index-GIF-image-format"></span> +<p>The images are output in the GIF format, if GIF support is enabled. +This is the default for the ‘<samp>dvigif</samp>’ binary, which only will be +available when GIF support is enabled. GIF images are palette images +(see the ‘<samp>--palette</samp>’ option) and does not support true alpha +channels (see the ‘<samp>--bg</samp>’ option). See also the ‘<samp>--png</samp>’ +option. +</p> +</dd> +<dt>‘<samp>--height*</samp>’</dt> +<dd><span id="index-baseline-reporting-1"></span> +<span id="index-height-reporting"></span> +<p>Report the height of the image. This only works reliably when the +LaTeX style <samp>preview.sty</samp> from preview-latex is used with +the ‘<samp>active</samp>’ option. It reports the number of pixels from the top +of the image to the baseline of the image. The total height of the +image is obtained as the sum of the values reported from +‘<samp>--height</samp>’ and ‘<samp>--depth</samp>’. +</p> +</dd> +<dt>‘<samp>-l [=]<var>num</var></samp>’</dt> +<dd><span id="index-last-page-printed"></span> +<span id="index-page_002c-last-printed"></span> +<span id="index-physical-page-number_002c-and-_002dl"></span> +<span id="index-absolute-page-number_002c-and-_002dl"></span> +<p>The last page printed will be the first one numbered <var>num</var>. Default +is the last page in the document. If <var>num</var> is prefixed by an equals +sign, then it (and the argument to the ‘<samp>-p</samp>’ option, if specified) +is treated as a physical (absolute) page number, rather than a value to +compare with the TeX ‘<samp>\count0</samp>’ values stored in the DVI file. +Thus, using ‘<samp>-l =9</samp>’ will end with the ninth page of the document, +no matter what the pages are actually numbered. +</p> +</dd> +<dt>‘<samp>--mode <var>mode</var></samp>’</dt> +<dd><span id="index-mode-name_002c-specifying"></span> +<span id="index-Metafont-mode_002c-specifying"></span> +<p>This option only has an effect when using bitmapped (PK) fonts. Use +<var>mode</var> as the Metafont device name for the PK fonts (both for path +searching and font generation). This needs to be augmented with the base +device resolution, given with the ‘<samp>--bdpi</samp>’ option. See the file +<a href="ftp://ftp.tug.org/tex/modes.mf">ftp://ftp.tug.org/tex/modes.mf</a> for a list of resolutions and mode +names for most devices. See <a href="https://tug.org/texinfohtml/kpathsea.html#Unable-to-generate-fonts">Unable to generate fonts</a> in <cite>Kpathsea</cite>. +</p> +</dd> +<dt>‘<samp>-M*</samp>’</dt> +<dd><span id="index-font-generation_002c-avoiding"></span> +<span id="index-mktexpk_002c-avoiding"></span> +<p>This option only has an effect when using bitmapped (PK) fonts. It turns +off automatic PK font generation (<samp>mktexpk</samp>). +</p> +</dd> +<dt>‘<samp>--nogs*</samp>’</dt> +<dd><span id="index-GhostScript_002c-turning-off"></span> +<p>This switch prohibits the internal call to GhostScript for displaying +PostScript specials. ‘<samp>--nogs0</samp>’ turns the call back on. +</p> +</dd> +<dt>‘<samp>--nogssafer*</samp>’</dt> +<dd><span id="index-GhostScript-and-_002ddSAFER"></span> +<span id="index-_002ddSAFER"></span> +<p>Normally, if GhostScript is used to render PostScript specials, the +GhostScript interpreter is run with the option ‘<samp>-dSAFER</samp>’. The +‘<samp>--nogssafer</samp>’ option runs GhostScript without ‘<samp>-dSAFER</samp>’. The +‘<samp>-dSAFER</samp>’ option in Ghostscript disables PostScript operators such +as deletefile, to prevent possibly malicious PostScript programs from +having any effect. +</p> +</dd> +<dt>‘<samp>--norawps*</samp>’</dt> +<dd><span id="index-PostScript_002c-turning-off-raw-PostScript-specials"></span> +<p>Some packages generate raw PostScript specials, even non-rendering such +specials. This switch turns off the internal call to GhostScript +intended to display these raw PostScript specials. ‘<samp>--norawps0</samp>’ +turns the call back on. +</p> +</dd> +<dt>‘<samp>-o <var>name</var></samp>’</dt> +<dd><span id="index-output_002c-redirecting"></span> +<span id="index-standard-output_002c-output-to"></span> +<p>Send output to the file <var>name</var>. A single occurrence of ‘<samp>%d</samp>’ or +‘<samp>%01d</samp>’, …, ‘<samp>%09d</samp>’ will be exchanged for the physical +page number (this can be changed, see the ‘<samp>--dvinum</samp>’ switch). The +default output filename is ‘<samp><var>file</var>%d.png</samp>’ where the input DVI +file was ‘<samp><var>file</var>.dvi</samp>’. +</p> +</dd> +<dt>‘<samp>-O <var>x-offset</var>,<var>y-offset</var></samp>’</dt> +<dd><span id="index-offset-pages"></span> +<p>Move the origin by <var>x-offset</var>,<var>y-offset</var>, a comma-separated +pair of dimensions such as ‘<samp>.1in,-.3cm</samp>’. +The origin of the page is shifted from the default position +(of one inch down, one inch to the right from the upper left corner of +the paper) by this amount. +</p> +</dd> +<dt>‘<samp>-p [=]<var>num</var></samp>’</dt> +<dd><span id="index-first-page-printed"></span> +<span id="index-page_002c-first-printed"></span> +<span id="index-physical-page-number_002c-and-_002dp"></span> +<span id="index-absolute-page-number_002c-and-_002dp"></span> +<p>The first page printed will be the first one numbered <var>num</var>. Default +is the first page in the document. If <var>num</var> is prefixed by an +equals sign, then it (and the argument to the ‘<samp>-l</samp>’ option, if +specified) is treated as a physical (absolute) page number, rather than +a value to compare with the TeX ‘<samp>\count0</samp>’ values stored in the +DVI file. Thus, using ‘<samp>-p =3</samp>’ will start with the third page of +the document, no matter what the pages are actually numbered. +</p> +</dd> +<dt>‘<samp>--palette*</samp>’</dt> +<dd><span id="index-forcing-palette-output"></span> +<p>When an external image is included, ‘<samp>dvipng</samp>’ will automatically +switch to truecolor mode, to avoid unnecessary delay and quality +reduction, and enable the EPS translator to draw on a transparent +background and outside of the boundingbox. This switch will force +palette (256-color) output and make ‘<samp>dvipng</samp>’ revert to opaque +clipped image inclusion. This will also override the ‘<samp>--truecolor</samp>’ +switch if present. +</p> +</dd> +<dt>‘<samp>--picky*</samp>’</dt> +<dd><span id="index-no-erroneous-images"></span> +<p>No images are output when a warning occurs. Normally, dvipng will +output an image in spite of a warning, but there may be something +missing in this image. One reason to use this option would be if you +have a more complete but slower fallback converter. Mainly, this is +useful for failed figure inclusion and unknown \special occurrences, +but warnings will also occur for missing or unknown color specs and +missing PK fonts. +</p> +</dd> +<dt>‘<samp>--png*</samp>’</dt> +<dd><span id="index-PNG-image-format"></span> +<p>The images are output in the PNG format. This is the default for the +‘<samp>dvipng</samp>’ binary. See also the ‘<samp>--gif</samp>’ option. +</p> +</dd> +<dt>‘<samp>-pp <var>firstpage</var>-<var>lastpage</var></samp>’</dt> +<dd><span id="index-page-range"></span> +<p>Print pages <var>firstpage</var> through <var>lastpage</var>; but not quite +equivalent to ‘<samp>-p <var>firstpage</var> -l <var>lastpage</var></samp>’. For example, +when rendering a book, there may be several instances of a page in the +DVI file (one in <code>\frontmatter</code>, one in <code>\mainmatter</code>, and one +in <code>\backmatter</code>). In case of several pages matching, ‘<samp>-pp +<var>firstpage</var>-<var>lastpage</var></samp>’ will render <em>all</em> pages that +matches the specified range, while ‘<samp>-p <var>firstpage</var> -l +<var>lastpage</var></samp>’ will render the pages from the <em>first</em> occurrence +of <var>firstpage</var> to the <em>first</em> occurrence of <var>lastpage</var>. +This is the (undocumented) behaviour of dvips. In dvipng you can give +both kinds of options, in which case you get all pages that matches the +range in ‘<samp>-pp</samp>’ between the pages from ‘<samp>-p</samp>’ to ‘<samp>-l</samp>’. Also +multiple ‘<samp>-pp</samp>’ options accumulate, unlike ‘<samp>-p</samp>’ and ‘<samp>-l</samp>’. +The ‘<samp>-</samp>’ separator can also be ‘<samp>:</samp>’. Note that ‘<samp>-pp -1</samp>’ +will be interpreted as "all pages up to and including 1", if you want a +page numbered -1 (only the table of contents, say) put ‘<samp>-pp -1--1</samp>’, +or more readable, ‘<samp>-pp -1:-1</samp>’. +</p> +</dd> +<dt>‘<samp>-q*</samp>’</dt> +<dd><span id="index-quiet-operation"></span> +<span id="index-silent-operation"></span> +<span id="index-warnings_002c-suppressing"></span> +<p>Run quietly. Don’t chatter about pages converted, etc. to standard +output; report no warnings (only errors) to standard error. +</p> +</dd> +<dt>‘<samp>-Q <var>num</var></samp>’</dt> +<dd><span id="index-antialiasing-levels_002c-number-of"></span> +<span id="index-quality"></span> +<p>Set the quality to <var>num</var>. That is, choose the number of antialiasing +levels for bitmapped fonts (PK), to be +<var>num</var>*<var>num</var>+1. The default value is 4 which gives 17 levels of +antialiasing for antialiased fonts from these two. If FreeType is +available, its rendering is unaffected by this option. +</p> +</dd> +<dt>‘<samp>-r*</samp>’</dt> +<dd><span id="index-reverse-pagination"></span> +<p>Toggle output of pages in reverse/forward order. By default, the first +page in the DVI is output first. +</p> + +</dd> +<dt>‘<samp>--strict*</samp>’</dt> +<dd><span id="index-exit-on-erroneous-images"></span> +<p>The program exits when a warning occurs. Normally, dvipng will output +an image in spite of a warning, but there may be something missing in +this image. One reason to use this option would be if you have a more +complete but slower fallback converter. See the ‘<samp>--picky</samp>’ option +above for a list of when warnings occur. +</p> +</dd> +<dt>‘<samp>-T <var>image_size</var></samp>’</dt> +<dd><p>Set the image size to <var>image_size</var> which can be either of +‘<samp>bbox</samp>’, ‘<samp>tight</samp>’, or a comma-separated pair of dimensions +<var>hsize</var>,<var>vsize</var> such as ‘<samp>.1in,.3cm</samp>’. The default is +‘<samp>bbox</samp>’ which produces a PNG that includes all ink put on the page +and in addition the DVI origin, located 1in from the top and 1in from +the left edge of the paper. This usually gives whitespace above and to +the left in the produced image. The value ‘<samp>tight</samp>’ will make dvipng +only include all ink put on the page, producing neat images. +</p> +</dd> +<dt>‘<samp>--truecolor*</samp>’</dt> +<dd><span id="index-truecolor-output"></span> +<p>This will make ‘<samp>dvipng</samp>’ generate truecolor output. Note that +truecolor output is automatic if you include an external image in your +DVI, e.g., via a PostScript special (i.e., the ‘<samp>graphics</samp>’ or +‘<samp>graphicx</samp>’ package). This switch is overridden by the +‘<samp>--palette</samp>’ switch. +</p> +</dd> +<dt>‘<samp>-v*</samp>’</dt> +<dd><p>Enable verbose operation. This will currently indicate what fonts is +used, in addition to the usual output. +</p> +</dd> +<dt>‘<samp>--width*</samp>’</dt> +<dd><span id="index-width-reporting"></span> +<p>Report the width of the image. See also ‘<samp>--height</samp>’ and +‘<samp>--depth</samp>’. +</p> +</dd> +<dt>‘<samp>-x <var>num</var></samp>’</dt> +<dd><span id="index-magnification_002c-overriding-DVI"></span> +<p>This option is deprecated; it should not be used. It is much better to +select the output resolution directly with the ‘<samp>-D</samp>’ option. This +option sets the magnification ratio to <em><var>num</var>/1000</em> and +overrides the magnification specified in the DVI file. Must be between +10 and 100000. It is recommended that you use standard magstep values +(1095, 1200, 1440, 1728, 2074, 2488, 2986, and so on) to help reduce the +total number of PK files generated. <var>num</var> may be a real number, not +an integer, for increased precision. +</p> +</dd> +<dt>‘<samp>-z <var>num</var></samp>’</dt> +<dd><span id="index-compression"></span> +<p>Set the PNG compression level to <var>num</var>. This option is enabled if +your ‘<samp>libgd</samp>’ is new enough. The default compression level is 1, +which selects maximum speed at the price of slightly larger PNGs. For an +older ‘<samp>libgd</samp>’, the hard-soldered value 5 is used. The include file +‘<samp>png.h</samp>’ says +</p><blockquote> +<p>Currently, valid values range from 0 - 9, corresponding directly to the +zlib compression levels 0 - 9 (0 - no compression, 9 - "maximal" +compression). Note that tests have shown that zlib compression levels +3-6 usually perform as well as level 9 for PNG images, and do +considerably fewer calculations. In the future, these values may not +correspond directly to the zlib compression levels. +</p></blockquote> +</dd> +</dl> + +<hr> +<span id="Graphics"></span><div class="header"> +<p> +Next: <a href="#Color" accesskey="n" rel="next">Color</a>, Previous: <a href="#Command_002dline-options" accesskey="p" rel="prev">Command-line options</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Graphics-1"></span><h2 class="chapter">5 Graphics</h2> + +<p>‘<samp>dvipng</samp>’ attempts to handle graphics as included by the +‘<samp>graphicx</samp>’ and ‘<samp>graphics</samp>’ packages, without the need of +specifying a driver to these packages. This means that it recognizes +the encapsulated postscript inclusion meant for ‘<samp>dvips</samp>’, but is +also able (from version 1.8) to include bitmapped graphics. It also +tries to handle some of the raw PostScript that is output from various +packages. Some of the possibilities and problems are mentioned below. +</p> +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Encapsulated-PostScript" accesskey="1">Encapsulated PostScript</a></td><td> </td><td align="left" valign="top">An internal call to GhostScript +</td></tr> +<tr><td align="left" valign="top">• <a href="#Bitmapped-graphics" accesskey="2">Bitmapped graphics</a></td><td> </td><td align="left" valign="top">PNG, JPEG and GIF +</td></tr> +<tr><td align="left" valign="top">• <a href="#Raw-PostScript" accesskey="3">Raw PostScript</a></td><td> </td><td align="left" valign="top">Ignore or give to GhostScript +</td></tr> +</table> + +<hr> +<span id="Encapsulated-PostScript"></span><div class="header"> +<p> +Next: <a href="#Bitmapped-graphics" accesskey="n" rel="next">Bitmapped graphics</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Encapsulated-PostScript-1"></span><h3 class="section">5.1 Encapsulated PostScript</h3> + +<p>When an EPS file is included, a call to GhostScript is performed to +produce a bitmapped image that can be included. The default is to +produce an image with transparent background, at the same size as the +DVI page currently being converted to PNG, and include that as +foreground on the PNG. Of course, if the image is to be cropped, that +is done. The included image will be a truecolor image, so for maximum +performance the output PNG will be in truecolor mode as well. +</p> +<p>This conversion needs the ‘<samp>pngalpha</samp>’ output device to be present +in your copy of GhostScript. If that device is not present, or you use +the ‘<samp>--palette</samp>’ switch or request GIF output, the fallback is to +use the ‘<samp>png16m</samp>’ device to produce a cropped opaque image for +inclusion. Other relevant switches are ‘<samp>--noghostscript</samp>’ and +‘<samp>--nogssafer</samp>’. See <a href="#Option-details">Option details</a>. +</p> +<span id="index-PostScript-inclusion-problems"></span> +<p>The most common problem with including graphics is an incorrect +bounding box. Complain to whoever wrote the software that generated +the file if the bounding box is indeed incorrect. An adjusted +boundingbox can be specified in the ‘<samp>\includegraphics</samp>’ call, as +in this example (using ‘<samp>graphicx</samp>’): +</p> +<div class="example"> +<pre class="example">\includegraphics[bb=10 20 100 200]{imagename.eps} +</pre></div> + + +<hr> +<span id="Bitmapped-graphics"></span><div class="header"> +<p> +Next: <a href="#Raw-PostScript" accesskey="n" rel="next">Raw PostScript</a>, Previous: <a href="#Encapsulated-PostScript" accesskey="p" rel="prev">Encapsulated PostScript</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Bitmapped-graphics-1"></span><h3 class="section">5.2 Bitmapped graphics</h3> + +<p>dvipng can include PNG, JPEG and GIF graphics. When including such +images via ‘<samp>\includegraphics</samp>’ you need to specify the bounding +box since TeX itself cannot read them from the files in question. +The bounding box size should be given as ‘<samp>0 0 w h</samp>’ in pixels, +e.g., if the file ‘<samp>imagename.png</samp>’ is 300x400 pixels, the +inclusion would read +</p> +<div class="example"> +<pre class="example">\includegraphics[bb=0 0 300 400]{imagename.png} +</pre></div> + +<p>The default size is the image size in bp (“big points” in TeX +nomenclature or PostScript points as other people have it, 72 per inch). +That is, default resolution will be 72 dpi for included bitmaps, which +is the default size in the few other bitmap-capable drivers that are +known to me (dvipdfm and PDFLaTeX). +</p> +<p>If you want 100 dpi you need to specify the width accordingly. You +just divide your image width by 100: a 135 pixel wide image at 100 dpi +will take up 1.35 inches. If you want 200 dpi you divide by 200, and +so on. Simple, eh? The example above at 200 dpi would be 1.5 inches +wide: +</p> +<div class="example"> +<pre class="example">\includegraphics[bb=0 0 300 400,witdh=1.5in]{imagename.png} +</pre></div> + +<hr> +<span id="Raw-PostScript"></span><div class="header"> +<p> +Previous: <a href="#Bitmapped-graphics" accesskey="p" rel="prev">Bitmapped graphics</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Raw-PostScript-1"></span><h3 class="section">5.3 Raw PostScript</h3> + +<p>dvipng attempts to handle raw PostScript. Rendering raw PostScript +specials is done on top of the page by including a transparent image +generated by the ‘<samp>pngalpha</samp>’ device in GhostScript (automatically +selecting ‘<samp>truecolor</samp>’ mode in dvipng). +</p> +<p>Included PostScript headers are respected, and if the header +‘<samp>tex.pro</samp>’ is included, dvipng also throws in ‘<samp>color.pro</samp>’ and +‘<samp>special.pro</samp>’. The package ‘<samp>xcolor</samp>’ includes its own headers +with color names, and this is not only kept as a PostScript header, but +is also read and interpreted by dvipng itself. An attempt is also made +to respect the PGF header. The non-rendering specials from +‘<samp>hyperref</samp>’ are handled via some heuristics and do not give an +error. +</p> +<p>Really rendering and moving things with raw PostScript specials is more +troublesome. The \rotatebox macro serves as a good example. The dvips +driver of the graphicx package surrounds DVI glyphs with PostScript code +so that after conversion by dvips, the glyphs (now themselves in +PostScript) will be rotated in the desired way. dvipng does not handle +this, at present. An attempt has been made to handle the rendering +specials output by PGF (tikz), and also PSTricks. Some things work, but +others do not. This is especially clear when mixing PostScript and DVI +rendering commands such as glyphs. dvipng cannot at present detect if +PostScript code moves ‘<samp>currentpoint</samp>’ or rotates the frame since +GhostScript does not return such information. A recommendation would be +to produce images from these packages as EPS files and include them into +your document in the standard manner. +</p> +<p>Another way to handle this would be to use a slower fallback (with dvips +and gs, for example). If you want to disable raw PostScript handling in +dvipng, use the switch ‘<samp>--norawps</samp>’. This switch turns off the +internal call to GhostScript intended to display these raw PostScript +specials. Further, when dvipng encounters raw PostScript and the gs call +is turned off, it gives a warning. It is now possible to use the switch +‘<samp>--picky</samp>’ to disable page rendering of pages with warnings, and use +the slower fallback for these pages. +</p> +<hr> +<span id="Color"></span><div class="header"> +<p> +Next: <a href="#Diagnosing-problems" accesskey="n" rel="next">Diagnosing problems</a>, Previous: <a href="#Graphics" accesskey="p" rel="prev">Graphics</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Color-1"></span><h2 class="chapter">6 Color</h2> + +<p>To support color, dvipng recognizes a certain set of specials as +generated by the ‘<samp>color</samp>’ and ‘<samp>xcolor</samp>’ style files. These +specials start with the keyword ‘<samp>color</samp>’ or the keyword +‘<samp>background</samp>’, followed by a color specification. +</p> +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Color-specifications" accesskey="1">Color specifications</a></td><td> </td><td align="left" valign="top"> +</td></tr> +<tr><td align="left" valign="top">• <a href="#Color-specials" accesskey="2">Color specials</a></td><td> </td><td align="left" valign="top"> +</td></tr> +</table> + + +<hr> +<span id="Color-specifications"></span><div class="header"> +<p> +Next: <a href="#Color-specials" accesskey="n" rel="next">Color specials</a>, Up: <a href="#Color" accesskey="u" rel="up">Color</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Color-specifications-1"></span><h3 class="section">6.1 Color specifications</h3> + +<span id="index-color-specifications"></span> + +<p>The color specification supported by dvipng is by-value or by-name. The +by-value spec starts with the name of a color model (one of ‘<samp>rgb</samp>’, +‘<samp>hsb</samp>’, ‘<samp>cmy</samp>’, ‘<samp>cmyk</samp>’, or ‘<samp>gray</samp>’) followed by the +appropriate number of parameters. Thus, the color specification +‘<samp>rgb 0.3 0.4 0.5</samp>’ would correspond to the color that is ‘<samp>0.3 +0.4 0.5</samp>’ in its red, blue and green values. The color model used +internally in dvipng is ‘<samp>RGB</samp>’ (discretized to 256 levels), for +details on the formulas used in conversion, see the ‘<samp>xcolor</samp>’ +documentation. +</p> +<p>By-name color specifications are single (case-dependent) words and are +compared with color names defined in ‘<samp>dvipsnam.def</samp>’ (from the +‘<samp>graphics</samp>’ bundle), ‘<samp>svgnam.def</samp>’ and ‘<samp>xcolor.sty</samp>’ (from +the ‘<samp>xcolor</samp>’ bundle). See the ‘<samp>xcolor</samp>’ documentation for a +list of names and the corresponding colors. +</p> +<p>On the command-line, the name ‘<samp>Transparent</samp>’ can also be used as +an argument to ‘<samp>--bg</samp>’ to choose transparent background. +See <a href="#Option-details">Option details</a>. +</p> +<hr> +<span id="Color-specials"></span><div class="header"> +<p> +Previous: <a href="#Color-specifications" accesskey="p" rel="prev">Color specifications</a>, Up: <a href="#Color" accesskey="u" rel="up">Color</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Color-specials-1"></span><h3 class="section">6.2 Color specials</h3> + +<p>We will describe ‘<samp>background</samp>’ first, since it is the simplest. The +‘<samp>background</samp>’ keyword must be followed by a color specification. +That color specification is used as a fill color for the background. The +last ‘<samp>background</samp>’ special on a page is the one that gets used, and +is used for the whole of the page image. (This is possible because the +prescan phase of dvipng notices all of the color specials so that the +appropriate information can be written out during the second phase.) +</p> +<p>The ‘<samp>color</samp>’ special itself has three forms. The first is just +‘<samp>color</samp>’ followed by a color specification. In this case, the +current global color is set to that color; the color stack must be empty +when such a command is executed. +</p> +<p>The second form is ‘<samp>color push</samp>’ followed by a color specification. +This saves the current color on the color stack and sets the color to be +that given by the color specification. This is the most common way to +set a color. +</p> +<p>The final form of the ‘<samp>color</samp>’ special is just ‘<samp>color pop</samp>’, +with no color specification; this says to pop the color last pushed on +the color stack from the color stack and set the current color to be +that color. +</p> +<p>dvipng correctly handles these color specials across pages, even when +the pages are rendered repeatedly or in reverse order. +</p> +<hr> +<span id="Diagnosing-problems"></span><div class="header"> +<p> +Next: <a href="#Credits" accesskey="n" rel="next">Credits</a>, Previous: <a href="#Color" accesskey="p" rel="prev">Color</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Diagnosing-problems-1"></span><h2 class="chapter">7 Diagnosing problems</h2> + +<span id="index-problems"></span> +<span id="index-trouble"></span> +<span id="index-debugging-1"></span> + +<p>You’ve gone through all the trouble of installing dvipng, carefully read +all the instructions in this manual, and still can’t get something to +work. The following sections provide some helpful hints if you find +yourself in such a situation. +</p> +<table class="menu" border="0" cellspacing="0"> +<tr><td align="left" valign="top">• <a href="#Contact-information" accesskey="1">Contact information</a></td><td> </td><td align="left" valign="top">Who to ask. +</td></tr> +<tr><td align="left" valign="top">• <a href="#Debug-options" accesskey="2">Debug options</a></td><td> </td><td align="left" valign="top">Getting diagnostics. +</td></tr> +</table> + +<hr> +<span id="Contact-information"></span><div class="header"> +<p> +Next: <a href="#Debug-options" accesskey="n" rel="next">Debug options</a>, Up: <a href="#Diagnosing-problems" accesskey="u" rel="up">Diagnosing problems</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Contact-information-1"></span><h3 class="section">7.1 Contact information</h3> + +<p>Bug reports should be sent to +<a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>. +</p> +<p>Questions, suggestions for new features, pleas for help, and/or praise +should go to <a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>. For more information on this +mailing list, send a message with just the word ‘help’ as subject or +body to <a href="mailto:dvipng-request@nongnu.org">dvipng-request@nongnu.org</a> or look at +<a href="http://lists.nongnu.org/mailman/listinfo/dvipng">http://lists.nongnu.org/mailman/listinfo/dvipng</a>. +</p> +<p>Offers to support further development will be appreciated. For developer +access, ask on <a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>. +</p> +<p>For details on the TeX path-searching library, and <code>mktexpk</code> +problems, see <a href="https://tug.org/texinfohtml/kpathsea.html#Common-problems">Common problems</a> in <cite>Kpathsea</cite>. +</p> + +<hr> +<span id="Debug-options"></span><div class="header"> +<p> +Previous: <a href="#Contact-information" accesskey="p" rel="prev">Contact information</a>, Up: <a href="#Diagnosing-problems" accesskey="u" rel="up">Diagnosing problems</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Debug-options-1"></span><h3 class="section">7.2 Debug options</h3> + +<p>The ‘<samp>-d</samp>’ flag to dvipng helps in tracking down certain errors. The +parameter to this flag is an integer that tells what errors are +currently being tracked. To track a certain class of debug messages, +simply provide the appropriate number given below; if you wish to track +multiple classes, sum the numbers of the classes you wish to track. To +track all classes, you can use <code>-1</code>. +</p> +<p>Some of these debugging options are actually provided by Kpathsea +(see <a href="https://tug.org/texinfohtml/kpathsea.html#Debugging">Debugging</a> in <cite>Kpathsea</cite>). +</p> +<p>The classes are: +</p><dl compact="compact"> +<dt>1</dt> +<dd><p>Normal dvi op-codes +</p></dd> +<dt>2</dt> +<dd><p>Virtual fonts +</p></dd> +<dt>4</dt> +<dd><p>PK fonts +</p></dd> +<dt>8</dt> +<dd><p>TFM files +</p></dd> +<dt>16</dt> +<dd><p>Glyph rendering +</p></dd> +<dt>32</dt> +<dd><p>FreeType calls +</p></dd> +<dt>64</dt> +<dd><p>Encoding loads +</p></dd> +<dt>128</dt> +<dd><p>Color specials +</p></dd> +<dt>256</dt> +<dd><p>GhostScript specials +</p></dd> +<dt>512</dt> +<dd><p>Kpathsea <code>stat</code> calls +</p></dd> +<dt>1024</dt> +<dd><p>Kpathsea hash table lookups +</p></dd> +<dt>2048</dt> +<dd><p>Kpathsea path element expansion +</p></dd> +<dt>4096</dt> +<dd><p>Kpathsea path searches +</p> +</dd> +</dl> + +<hr> +<span id="Credits"></span><div class="header"> +<p> +Next: <a href="#Copying" accesskey="n" rel="next">Copying</a>, Previous: <a href="#Diagnosing-problems" accesskey="p" rel="prev">Diagnosing problems</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Credits-1"></span><h2 class="chapter">8 Credits</h2> + +<p>A number of persons have contributed, if I forget to mention someone, +I apologize. First and foremost we have David Kastrup whose +preview-latex project provided the incentive to write this program. +There is also a number of people who have contributed by reporting +bugs and suggesting improvements as the thing has evolved. These +include but is perhaps not limited to (in semi-random order): Thomas +Esser (teTeX), Christian Schenk (MIKTeX), Brian R Furry (debian +package), Angus Leeming (LyX), Thomas Boutell (libgd), John Jones +(first user report), Uwe Kern (xcolor), Karl Berry and Peter +Breitenlohner (TeX Live), David Harvey (hinting in Freetype), Neal +Harmon, Alan Shutko, Reiner Stieb, Nick Alcock, Adam Buchbinder, Svend +Tollak Munkejord, James Longstreet, Bernhard Simon, Bob McElrath, +Georg Schwarz, Jason Farmer, Brian V. Smith, Samuel Hathaway, Thomas +R. Shemanske, Stephen Gibson, Christian Ridderström, Ezra Peisach, +William H Wheeler, Thomas Klausner, Harald Koenig, Adrian Bunk, Kevin +Smith, Jason Riedy, Wolfram Krause, Reinhard Kotucha, Takeshi Abe, +Waldeck Schutzer, and Andy Nguyen. +</p> + +<hr> +<span id="Copying"></span><div class="header"> +<p> +Next: <a href="#Index" accesskey="n" rel="next">Index</a>, Previous: <a href="#Credits" accesskey="p" rel="prev">Credits</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Copying-1"></span><h2 class="chapter">9 Copying</h2> + +<p>This program is free software: you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License as +published by the Free Software Foundation, either version 3 of the +License, or (at your option) any later version. +</p> +<p>This program is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. +</p> +<p>You should have received a copy of the GNU Lesser General Public +License along with this program. If not, see +<http://www.gnu.org/licenses/>. +</p> +<br> +<br> +<p>Copyright © 2002-2015, 2019 Jan-Åke Larsson +</p> +<hr> +<span id="Index"></span><div class="header"> +<p> +Previous: <a href="#Copying" accesskey="p" rel="prev">Copying</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p> +</div> +<span id="Index-1"></span><h2 class="unnumbered">Index</h2> + +<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter" href="#Index_cp_symbol-1"><b>-</b></a> + +<br> +<a class="summary-letter" href="#Index_cp_letter-A"><b>A</b></a> + +<a class="summary-letter" href="#Index_cp_letter-B"><b>B</b></a> + +<a class="summary-letter" href="#Index_cp_letter-C"><b>C</b></a> + +<a class="summary-letter" href="#Index_cp_letter-D"><b>D</b></a> + +<a class="summary-letter" href="#Index_cp_letter-E"><b>E</b></a> + +<a class="summary-letter" href="#Index_cp_letter-F"><b>F</b></a> + +<a class="summary-letter" href="#Index_cp_letter-G"><b>G</b></a> + +<a class="summary-letter" href="#Index_cp_letter-H"><b>H</b></a> + +<a class="summary-letter" href="#Index_cp_letter-I"><b>I</b></a> + +<a class="summary-letter" href="#Index_cp_letter-L"><b>L</b></a> + +<a class="summary-letter" href="#Index_cp_letter-M"><b>M</b></a> + +<a class="summary-letter" href="#Index_cp_letter-N"><b>N</b></a> + +<a class="summary-letter" href="#Index_cp_letter-O"><b>O</b></a> + +<a class="summary-letter" href="#Index_cp_letter-P"><b>P</b></a> + +<a class="summary-letter" href="#Index_cp_letter-Q"><b>Q</b></a> + +<a class="summary-letter" href="#Index_cp_letter-R"><b>R</b></a> + +<a class="summary-letter" href="#Index_cp_letter-S"><b>S</b></a> + +<a class="summary-letter" href="#Index_cp_letter-T"><b>T</b></a> + +<a class="summary-letter" href="#Index_cp_letter-W"><b>W</b></a> + +</td></tr></table> +<table class="index-cp" border="0"> +<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left"> Section</th></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_symbol-1">-</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-_002ddSAFER">-dSAFER</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-A">A</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-absolute-page-number_002c-and-_002dl">absolute page number, and ‘<samp>-l</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-absolute-page-number_002c-and-_002dp">absolute page number, and ‘<samp>-p</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-antialiasing-levels_002c-number-of">antialiasing levels<span class="roman">, number of</span></a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-B">B</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-background-color-_0028option_0029">background color (option)</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-base-resolution_002c-setting">base resolution, setting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-baseline-reporting">baseline reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-baseline-reporting-1">baseline reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-C">C</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-color-specifications">color specifications</a>:</td><td> </td><td valign="top"><a href="#Color-specifications">Color specifications</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-command_002dline-options">command-line options</a>:</td><td> </td><td valign="top"><a href="#Command_002dline-options">Command-line options</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-compilation">compilation</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-compression">compression</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-configuration_002c-of-dvipng">configuration, of dvipng</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-D">D</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-dark-fonts">dark fonts</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-debugging">debugging</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-debugging-1">debugging</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-depth-reporting">depth reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-E">E</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-exit-on-erroneous-images">exit on erroneous images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-F">F</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-first-page-printed">first page printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-follow-mode">follow mode</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-font-generation_002c-avoiding">font generation, avoiding</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-forcing-palette-output">forcing palette output</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-foreground-color-_0028option_0029">foreground color (option)</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-FreeType-font-rendering">FreeType font rendering</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-fuzzy-images">fuzzy images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-G">G</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-gamma">gamma</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-GhostScript-and-_002ddSAFER">GhostScript and -dSAFER</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-GhostScript_002c-turning-off">GhostScript, turning off</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-GIF-image-format">GIF image format</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-H">H</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-height-reporting">height reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-I">I</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-installation_002c-of-dvipng">installation, of dvipng</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-invoking-dvipng">invoking dvipng</a>:</td><td> </td><td valign="top"><a href="#Basic-usage">Basic usage</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-L">L</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-last-page-printed">last page printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-light-fonts">light fonts</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-M">M</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-magnification_002c-overriding-DVI">magnification, overriding DVI</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-Metafont-mode_002c-specifying">Metafont mode, specifying</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-mktexpk_002c-avoiding"><code>mktexpk<span class="roman">, avoiding</span></code></a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-mode-name_002c-specifying">mode name, specifying</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-N">N</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-no-erroneous-images">no erroneous images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-O">O</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-offset-pages">offset pages</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-option_002c-details-of">option, details of</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-options_002c-dvipng">options, dvipng</a>:</td><td> </td><td valign="top"><a href="#Command_002dline-options">Command-line options</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-options_002c-reading-from-standard-input">options, reading from standard input</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-options_002c-summary">options, summary</a>:</td><td> </td><td valign="top"><a href="#Option-summary">Option summary</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-output-resolution_002c-setting">output resolution, setting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-output_002c-redirecting">output, redirecting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-P">P</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-page-range">page range</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-page_002c-first-printed">page, first printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-page_002c-last-printed">page, last printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-physical-page-number_002c-and-_002dl">physical page number, and ‘<samp>-l</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-physical-page-number_002c-and-_002dp">physical page number, and ‘<samp>-p</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-PNG-image-format">PNG image format</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-PostScript-inclusion-problems">PostScript inclusion problems</a>:</td><td> </td><td valign="top"><a href="#Encapsulated-PostScript">Encapsulated PostScript</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-PostScript_002c-turning-off-raw-PostScript-specials">PostScript, turning off raw PostScript specials</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-problems">problems</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-Q">Q</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-quality">quality</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-quiet-operation">quiet operation</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-R">R</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-reverse-pagination">reverse pagination</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-S">S</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-silent-operation">silent operation</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-standard-input_002c-reading-options-from">standard input, reading options from</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-standard-output_002c-output-to">standard output, output to</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-T">T</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-transparent-border-fallback-color">transparent border fallback color</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-transparent-border-width">transparent border width</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-trouble">trouble</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-truecolor-output">truecolor output</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +<tr><th id="Index_cp_letter-W">W</th><td></td><td></td></tr> +<tr><td></td><td valign="top"><a href="#index-warnings_002c-suppressing">warnings, suppressing</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td></td><td valign="top"><a href="#index-width-reporting">width reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr> +<tr><td colspan="4"> <hr></td></tr> +</table> +<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter" href="#Index_cp_symbol-1"><b>-</b></a> + +<br> +<a class="summary-letter" href="#Index_cp_letter-A"><b>A</b></a> + +<a class="summary-letter" href="#Index_cp_letter-B"><b>B</b></a> + +<a class="summary-letter" href="#Index_cp_letter-C"><b>C</b></a> + +<a class="summary-letter" href="#Index_cp_letter-D"><b>D</b></a> + +<a class="summary-letter" href="#Index_cp_letter-E"><b>E</b></a> + +<a class="summary-letter" href="#Index_cp_letter-F"><b>F</b></a> + +<a class="summary-letter" href="#Index_cp_letter-G"><b>G</b></a> + +<a class="summary-letter" href="#Index_cp_letter-H"><b>H</b></a> + +<a class="summary-letter" href="#Index_cp_letter-I"><b>I</b></a> + +<a class="summary-letter" href="#Index_cp_letter-L"><b>L</b></a> + +<a class="summary-letter" href="#Index_cp_letter-M"><b>M</b></a> + +<a class="summary-letter" href="#Index_cp_letter-N"><b>N</b></a> + +<a class="summary-letter" href="#Index_cp_letter-O"><b>O</b></a> + +<a class="summary-letter" href="#Index_cp_letter-P"><b>P</b></a> + +<a class="summary-letter" href="#Index_cp_letter-Q"><b>Q</b></a> + +<a class="summary-letter" href="#Index_cp_letter-R"><b>R</b></a> + +<a class="summary-letter" href="#Index_cp_letter-S"><b>S</b></a> + +<a class="summary-letter" href="#Index_cp_letter-T"><b>T</b></a> + +<a class="summary-letter" href="#Index_cp_letter-W"><b>W</b></a> + +</td></tr></table> +<hr> + + + +</body> +</html> diff --git a/systems/doc/dvipng/dvipng.pdf b/systems/doc/dvipng/dvipng.pdf Binary files differnew file mode 100644 index 0000000000..08d644f0d3 --- /dev/null +++ b/systems/doc/dvipng/dvipng.pdf |