diff options
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/dvipng/ChangeLog | 5 | ||||
-rw-r--r-- | Build/source/texk/dvipng/dvipng.help | 38 | ||||
-rw-r--r-- | Build/source/texk/dvipng/dvipng.info | 1068 |
3 files changed, 1111 insertions, 0 deletions
diff --git a/Build/source/texk/dvipng/ChangeLog b/Build/source/texk/dvipng/ChangeLog index c48a026bfba..170dd05eba6 100644 --- a/Build/source/texk/dvipng/ChangeLog +++ b/Build/source/texk/dvipng/ChangeLog @@ -1,3 +1,8 @@ +2006-12-09 Karl Berry <karl@tug.org> + + * dvipng.h (alloca) [_AIX]: #define as _alloca, per the autoconf + manual. + 2006-11-11 Jan-Ake Larsson <jalar@mai.liu.se> * Release 1.9 diff --git a/Build/source/texk/dvipng/dvipng.help b/Build/source/texk/dvipng/dvipng.help new file mode 100644 index 00000000000..81974ccf5c0 --- /dev/null +++ b/Build/source/texk/dvipng/dvipng.help @@ -0,0 +1,38 @@ +This is ./dvipng 1.9 Copyright 2002-2006 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 (default on) + --gamma # Control color interpolation + --height* Output the image height on stdout + --noghostscript* Don't use ghostscript for PostScript specials + --nogssafer* Don't use -dSAFER in ghostscript calls + --picky When a warning occurs, don't output image + --strict When a warning occurs, exit + --t1lib* T1lib font rendering (default on) + -Q # Quality (T1lib and PK subsampling) + -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) + diff --git a/Build/source/texk/dvipng/dvipng.info b/Build/source/texk/dvipng/dvipng.info new file mode 100644 index 00000000000..e2f4323ec73 --- /dev/null +++ b/Build/source/texk/dvipng/dvipng.info @@ -0,0 +1,1068 @@ +This is dvipng.info, produced by makeinfo version 4.8 from +../../../texk/dvipng/dvipng.texi. + +INFO-DIR-SECTION TeX +START-INFO-DIR-ENTRY +* DVI-to-PNG: (dvipng). Translating TeX DVI files to Portable Network Graphics (PNG). +* dvipng: (dvipng). A DVI-to-PNG translator. +END-INFO-DIR-ENTRY + + +File: dvipng.info, Node: Top, Next: Introduction, Up: (dir) + +dvipng +****** + +This manual documents dvipng, a program to translate a DVI (DeVice +Independent) file into PNG (Portable Network Graphics). + + This file documents dvipng version 1.9 + + Corrections or perhaps rewrites of sections are _very welcome_. + + Jan-AAke Larsson + +* Menu: + +* Introduction:: Introduction +* Installation:: How to compile and install dvipng +* Basic usage:: First things first +* Command-line options:: Advanced usage +* Graphics:: Including PostScript and/or bitmaps +* Color:: Using color with dvipng +* Diagnosing problems:: Problems? +* Credits:: People who have contributed +* Copying:: GNU General Public License +* Index:: General index + + +File: dvipng.info, Node: Introduction, Next: Installation, Prev: Top, Up: Top + +1 Introduction +************** + +This program makes PNG and/or GIF graphics from DVI files as obtained +from TeX and its relatives. + + If GIF support is enabled, GIF output is chosen by using the +`dvigif' binary or with the `--gif' option. + + 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 `http://www.gnu.org/software/auctex/preview-latex.html'. + + 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 +`http://webwork.math.rochester.edu'. + + Other applications may also benefit, like web applications as +latex2html and WYSIWYG editors like LyX. + + The benefits of `dvipng'/`dvigif' include + + * 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. + + * It does not read the postamble, so it can be started before TeX + finishes. There is a `--follow' 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. + + * 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. + + * 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. + + * and more... + + + +File: dvipng.info, Node: Installation, Next: Basic usage, Prev: Introduction, Up: Top + +2 Installation +************** + +Installing dvipng should be simple: merely `./configure', `make', and +`make install'. + +* Menu: + +* Prerequisites:: +* Configure:: +* Build/install:: +* Installation outside the texmf tree:: +* Advice for non-privileged users:: + + +File: dvipng.info, Node: Prerequisites, Next: Configure, Up: Installation + +2.1 Prerequisites +================= + + * The GD Graphics Draw library, libgd + + The drawing library `libgd' is necessary, and is downloadable at + `http://www.boutell.com/gd', and there are binary packages for + most operating systems from their respective distributors. In any + case, the latest version of the library installs using `autoconf' + so it should not be difficult for you to install it from source, + and then proceed with installing dvipng. + + * The path-searching library kpathsea + + 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 `http://www.ctan.org' and compile it. + I have no experience with this, so I cannot help much here. + + * The font-rendering library FreeType 2 + + While not strictly necessary, FreeType 2 is recommended since + dvipng currently will produce better-quality images with this + library available. It will also enable direct support for + PostScript and TrueType fonts, and subfont support in dvipng. That + is, if you want to render CJK-LaTeX characters, you must have + FreeType 2 installed. With FreeType 2, 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. + + * The font-rendering library T1lib + + An alternative to FreeType 2 is T1lib, but this will enable only + PostScript fonts in dvipng, and will not include subfont support. + Also here, you can render images at different (and unusual) + resolutions without cluttering the disk with lots of bitmapped + fonts. If both FreeType 2 and T1lib are present, FreeType will be + internally preferred by dvipng, but T1lib can be chosen at runtime. + + * libpng and libz + + 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. + + * The `texinfo' package + + This is needed for building the documentation. + + +File: dvipng.info, Node: Configure, Next: Build/install, Prev: Prerequisites, Up: Installation + +2.2 Configure +============= + +The first step is to configure the source code, telling it where +various files will be. To do so, run + + ./configure OPTIONS + + (Note: if you have fetched dvipng from CVS rather than a regular +release, you will have to first generate `./configure' by running +`autoconf' 2.53 or later.) + + On many machines, you will not need to specify any options, but if +`configure' cannot determine something on its own, you'll need to help +it out. For a list of the options type + + ./configure --help + + 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 `./configure', 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., +`libgd.a' or `libgd.so'. If they are located in e.g., `/sw/local/lib', +do + + ./configure LDFLAGS=-L/sw/local/lib + + If the library is available as a shared object file (`.so'), the +runtime linker may also need to be told where to find the library, then +use + + ./configure LDFLAGS='-L/sw/local/lib -R/sw/local/lib' + + 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 `./configure', indicating that it cannot find e.g., `gd.h' or +`kpathsea.h' (most likely). You then need to specify the path to the +respective library's C header files. If they are located in e.g., +`/sw/local/include', do + + ./configure CPPFLAGS=-I/sw/local/include + + On my SUN Solaris workstation, I had to combine this into + + ./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/' + +where the backslash denotes a continuation of the line. + + +File: dvipng.info, Node: Build/install, Next: Installation outside the texmf tree, Prev: Configure, Up: Installation + +2.3 Build/install +================= + +Once `configure' has been run, simply enter + + make + +at the prompt to compile the C code, and build the documentation files. +To install the files into the locations chosen earlier, type + + make install + +You may need special privileges to install, e.g., if you are installing +into system directories. + + +File: dvipng.info, Node: Installation outside the texmf tree, Next: Advice for non-privileged users, Prev: Build/install, Up: Installation + +2.4 Installation outside the texmf tree +======================================= + +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 _only_ $SELFAUTOLOC, +$SELFAUTODIR, and $SELFAUTOPARENT are used in the texmf tree +configuration file `texmf.cnf'. If so, give the switch +`--enable-selfauto-set' to `./configure'. This will make dvipng adjust +these three internally so that kpathsea thinks that dvipng _is_ +installed in the texmf tree. + + +File: dvipng.info, Node: Advice for non-privileged users, Prev: Installation outside the texmf tree, Up: Installation + +2.5 Installation for non-privileged users +========================================= + +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 `configure' script, usually this is done by using the +`--prefix' option to the `configure' script, and let it point to the +personal home directory. In that way, resulting binaries will be +installed under the `bin' subdirectory of your home directory, manual +pages under `man' and so on. That way, it is reasonably easy to +maintain a bunch of additional packages, since the prefix argument is +supported by most `configure' scripts. + + You'll have to add something like `/home/myself/bin' to your `PATH' +shell variable, if it isn't there already, and similarly set the +`INFOPATH' and `MANPATH' variables to be able to access the +documentation. + + +File: dvipng.info, Node: Basic usage, Next: Command-line options, Prev: Installation, Up: Top + +3 Basic usage of dvipng +*********************** + +To use dvipng at its simplest, simply type + + dvipng foo + +where `foo.dvi' is the output of TeX that you want to convert to PNG +format. If there are four pages in `foo.dvi', those pages will be +output as `foo1.png', `foo2.png', `foo3.png', and `foo4.png', +respectively. + + If you have enabled the PostScript font support (via FreeType or +T1lib), fonts will be rendered as they are needed. Otherwise, if you +use 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. *Note Unable to generate fonts: +(kpathsea)Unable to generate fonts.) + + Many options are available (see the next section). For a brief +summary of available options, just type + + dvipng --help + + +File: dvipng.info, Node: Command-line options, Next: Graphics, Prev: Basic usage, Up: Top + +4 Command-line options +********************** + +dvipng has a plethora of command line options. Reading through this +section will give a good idea of the capabilities of the driver. + +* Menu: + +* Option summary:: Quick listing, from dvipng --help. +* Option details:: More information about each option. + + +File: dvipng.info, Node: Option summary, Next: Option details, Up: Command-line options + +4.1 Option summary +================== + +Here is a handy summary of the options; it is printed out when you run +dvipng with no arguments or with the standard `--help' option. + + This is ./dvipng 1.9 Copyright 2002-2006 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 (default on) + --gamma # Control color interpolation + --height* Output the image height on stdout + --noghostscript* Don't use ghostscript for PostScript specials + --nogssafer* Don't use -dSAFER in ghostscript calls + --picky When a warning occurs, don't output image + --strict When a warning occurs, exit + --t1lib* T1lib font rendering (default on) + -Q # Quality (T1lib and PK subsampling) + -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) + + +File: dvipng.info, Node: Option details, Prev: Option summary, Up: Command-line options + +4.2 Option details +================== + +Many of the parameterless options listed here can be turned off by +suffixing the option with a zero (`0'); for instance, to turn off page +reversal, use `-r0'. Such options are marked with a trailing `*'. + +`-' + Read additional options from standard input after processing the + command line. + +`--help' + Print a usage message and exit. + +`--version' + Print the version number and exit. + +`-bd NUM' + +`-bd COLOR_SPEC' + +`-bd 'NUM COLOR_SPEC'' + 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 COLOR_SPEC 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. + *Note Color::. + +`--bdpi NUM' + Set the base (Metafont) resolution, both horizontal and vertical, + to NUM dpi (dots per inch). This option is necessary when manually + selecting Metafont mode with the -mode option (see below). + +`-bg COLOR_SPEC' + 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. *Note Color::. + +`-d NUM' + Set the debug flags, showing what dvipng (thinks it) is doing. + This will work unless dvipng has been compiled without the `DEBUG' + option (not recommended). Set the flags as you need them, use `-d + -1' as the first option for maximum output. *Note Debug options::. + +`-D NUM' + Set the output resolution, both horizontal and vertical, to NUM + dpi (dots per inch). + + 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 FONT_PX pixels (in + Mozilla) the correct formula is + DPI = FONT_PX * 72.27 / 10 [px * TeXpt/in / TeXpt] + 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 + FONT_PX = FONT_PT * 96 / 72 [pt * px/in / (pt/in)] + On some high-res screens, the value is instead 120 dpi. Good luck! + +`--depth*' + Report the depth of the image. This only works reliably when the + LaTeX style `preview.sty' from preview-latex is used. 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) + <IMG SRC="FILENAME.PNG" STYLE="vertical-align: -DEPTHpx"> + The depth is a negative offset in this case, so the minus sign is + necessary, and the unit is pixels (px). + +`--dvinum*' + Set this option to make the output page number be the TeX page + numbers rather than the physical page number. See the `-o' switch. + +`-fg COLOR_SPEC' + 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'. *Note Color::. + +`--follow*' + 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 `tail -f' but for DVI-to-PNG + conversion. + +`--freetype*' + 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 + `gsftopk' for rendering the fonts. If you have PostScript versions + of Computer Modern installed, there will be no need to generate + bitmapped variants on disk of these. Then, you can render images + at different (and unusual) resolutions without cluttering the disk + with lots of bitmapped fonts. Note that if you have both FreeType + and T1lib on your system, FreeType will be preferred by dvipng. If + you for some reason would want to use T1lib rendering, use this + option. + +`--gamma NUM' + Control the interpolation of colors in the greyscale anti-aliasing + color palette. Default value is 1.0. For 0 < NUM < 1, the fonts + will be lighter (more like the background), and for NUM > 1, the + fonts will be darker (more like the foreground). + +`--gif*' + The images are output in the GIF format, if GIF support is enabled. + This is the default for the `dvigif' binary, which only will be + available when GIF support is enabled. GIF images are palette + images (see the `--palette' option) and does not support true alpha + channels (see the `--bg' option). See also the `--png' option. + +`--height*' + Report the height of the image. This only works reliably when the + LaTeX style `preview.sty' from preview-latex is used. 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 `--height' and `--depth'. + +`-l [=]NUM' + The last page printed will be the first one numbered NUM. Default + is the last page in the document. If NUM is prefixed by an equals + sign, then it (and the argument to the `-p' option, if specified) + is treated as a physical (absolute) page number, rather than a + value to compare with the TeX `\count0' values stored in the DVI + file. Thus, using `-l =9' will end with the ninth page of the + document, no matter what the pages are actually numbered. + +`--mode MODE' + Use MODE 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 `--bdpi' option. + See the file `ftp://ftp.tug.org/tex/modes.mf' for a list of + resolutions and mode names for most devices. *Note Unable to + generate fonts: (kpathsea)Unable to generate fonts. + +`-M*' + Turns off automatic PK font generation (`mktexpk'). This will have + no effect when using PostScript fonts, since no PK font generation + will be done anyway. + +`--noghostscript*' + This switch prohibits the internal call to GhostScript for + displaying PostScript specials. `--noghostscript0' turns the call + back on. + +`--nogssafer*' + Normally, if GhostScript is used to render PostScript specials, the + GhostScript interpreter is run with the option `-dSAFER'. The + `--nogssafer' option runs GhostScript without `-dSAFER'. The + `-dSAFER' option in Ghostscript disables PostScript operators such + as deletefile, to prevent possibly malicious PostScript programs + from having any effect. + +`-o NAME' + Send output to the file NAME. A single occurrence of `%d' or + `%01d', ..., `%09d' will be exchanged for the physical page number + (this can be changed, see the `--dvinum' switch). The default + output filename is `FILE%d.png' where the input DVI file was + `FILE.dvi'. + +`-O X-OFFSET,Y-OFFSET' + Move the origin by X-OFFSET,Y-OFFSET, a comma-separated pair of + dimensions such as `.1in,-.3cm'. 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 [=]NUM' + The first page printed will be the first one numbered NUM. Default + is the first page in the document. If NUM is prefixed by an + equals sign, then it (and the argument to the `-l' option, if + specified) is treated as a physical (absolute) page number, rather + than a value to compare with the TeX `\count0' values stored in the + DVI file. Thus, using `-p =3' will start with the third page of + the document, no matter what the pages are actually numbered. + +`--palette*' + Starting from `dvipng' 1.8, the output PNG will be a truecolor png + when an external image is included, 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 `dvipng' revert to + the old behaviour, where included images were opaque and always + clipped to the boundingbox. This will also override the + `--truecolor' switch if present. + +`--picky*' + 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. + +`--png*' + The images are output in the PNG format. This is the default for + the `dvipng' binary. See also the `--gif' option. + +`-pp FIRSTPAGE-LASTPAGE' + Print pages FIRSTPAGE through LASTPAGE; but not quite equivalent + to `-p FIRSTPAGE -l LASTPAGE'. For example, when rendering a book, + there may be several instances of a page in the DVI file (one in + `\frontmatter', one in `\mainmatter', and one in `\backmatter'). + In case of several pages matching, `-pp FIRSTPAGE-LASTPAGE' will + render _all_ pages that matches the specified range, while `-p + FIRSTPAGE -l LASTPAGE' will render the pages from the _first_ + occurrence of FIRSTPAGE to the _first_ occurrence of LASTPAGE. + 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 `-pp' between the pages from `-p' to `-l'. + Also multiple `-pp' options accumulate, unlike `-p' and `-l'. The + `-' separator can also be `:'. Note that `-pp -1' 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 `-pp -1--1', + or more readable, `-pp -1:-1'. + +`-q*' + Run quietly. Don't chatter about pages converted, etc. to standard + output; report no warnings (only errors) to standard error. + +`-Q NUM' + Set the quality to NUM. That is, choose the number of antialiasing + levels for PK and T1lib rendering to be NUM*NUM+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. + +`-r*' + Toggle output of pages in reverse/forward order. By default, the + first page in the DVI is output first. + +`--strict*' + 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 + `--picky' option above for a list of when warnings occur. + +`-T IMAGE_SIZE' + Set the image size to IMAGE_SIZE which can be either of `bbox', + `tight', or a comma-separated pair of dimensions HSIZE,VSIZE such + as `.1in,.3cm'. The default is `bbox' 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 `tight' will make dvipng only include + all ink put on the page, producing neat images. + +`--t1lib*' + Enable/disable T1lib font rendering (default on). This option is + available if the T1lib font library was present at compilation + time. If this is the case, dvipng will have direct support for + PostScript Type1 fonts internally, rather than using `gsftopk' for + rendering the fonts. If you have PostScript versions of Computer + Modern installed, there will be no need to generate bitmapped + variants on disk of these. Then, you can render images at + different (and unusual) resolutions without cluttering the disk + with lots of bitmapped fonts. Note that if you have both FreeType + and T1lib on your system FreeType will be preferred by dvipng, and + if you for some reason rather want to use T1lib, give the option + `--freetype0' (see above). + +`--truecolor*' + This will make `dvipng' 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 `graphics' or + `graphicx' package). This switch is overridden by the `--palette' + switch. + +`-v*' + Enable verbose operation. This will currently indicate what fonts + is used, in addition to the usual output. + +`-x NUM' + Set the x magnification ratio to NUM/1000. 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. NUM may be a real + number, not an integer, for increased precision. + +`-z NUM' + Set the PNG compression level to NUM. This option is enabled if + your `libgd' is new enough. The default compression level is 1, + which selects maximum speed at the price of slightly larger PNGs. + For an older `libgd', the hard-soldered value 5 is used. The + include file `png.h' says + + 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. + + +File: dvipng.info, Node: Graphics, Next: Color, Prev: Command-line options, Up: Top + +5 Graphics +********** + +`dvipng' attempts to handle graphics as included by the `graphicx' and +`graphics' packages, without the need of specifying a driver to these +packages. This means that it recognizes the encapsulated postscript +inclusion meant for `dvips', but is also able (from version 1.8) to +include bitmapped graphics, see the details below. + +* Menu: + +* Encapsulated PostScript:: An internal call to GhostScript +* Bitmapped graphics:: PNG, JPEG and GIF + + +File: dvipng.info, Node: Encapsulated PostScript, Next: Bitmapped graphics, Up: Graphics + +5.1 Encapsulated PostScript +=========================== + +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. + + This conversion needs the `pngalpha' output device to be present in +your copy of GhostScript. If that device is not present, or you use the +`--palette' switch or request GIF output, the fallback is to use the +`png16m' device to produce a cropped opaque image for inclusion. Other +relevant switches are `--noghostscript' and `--nogssafer'. *Note Option +details::. + + 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 `\includegraphics' call, as in this example +(using `graphicx'): + + \includegraphics[bb=10 20 100 200]{imagename.eps} + + +File: dvipng.info, Node: Bitmapped graphics, Prev: Encapsulated PostScript, Up: Graphics + +5.2 Bitmapped graphics +====================== + +dvipng can include PNG, JPEG and GIF graphics. When including such +images via `\includegraphics' 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 `0 0 w h' in pixels, e.g., if the +file `imagename.png' is 300x400 pixels, the inclusion would read + + \includegraphics[bb=0 0 300 400]{imagename.png} + + 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). + + 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: + + \includegraphics[bb=0 0 300 400,witdh=1.5in]{imagename.png} + + +File: dvipng.info, Node: Color, Next: Diagnosing problems, Prev: Graphics, Up: Top + +6 Color +******* + +To support color, dvipng recognizes a certain set of specials. These +specials start with the keyword `color' or the keyword `background', +followed by a color specification. + +* Menu: + +* Color specifications:: +* Color specials:: + + +File: dvipng.info, Node: Color specifications, Next: Color specials, Up: Color + +6.1 Color specifications +======================== + +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 `rgb', +`hsb', `cmy', `cmyk', or `gray') followed by the appropriate number of +parameters. Thus, the color specification `rgb 0.3 0.4 0.5' would +correspond to the color that is `0.3 0.4 0.5' in its red, blue and +green values. The color model used internally in dvipng is `RGB' +(discretized to 256 levels), for details on the formulas used in +conversion, see the `xcolor' documentation. + + By-name color specifications are single (case-dependent) words and +are compared with color names defined in `dvipsnam.def' (from the +`graphics' bundle), `svgnam.def' and `xcolor.sty' (from the `xcolor' +bundle). See the `xcolor' documentation for a list of names and the +corresponding colors. + + On the command-line, the name `Transparent' can also be used as an +argument to `--bg' to choose transparent background. *Note Option +details::. + + +File: dvipng.info, Node: Color specials, Prev: Color specifications, Up: Color + +6.2 Color specials +================== + +We will describe `background' first, since it is the simplest. The +`background' keyword must be followed by a color specification. That +color specification is used as a fill color for the background. The +last `background' 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.) + + The `color' special itself has three forms. The first is just +`color' 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. + + The second form is `color push' 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. + + The final form of the `color' special is just `color pop', 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. + + dvipng correctly handles these color specials across pages, even when +the pages are rendered repeatedly or in reverse order. + + +File: dvipng.info, Node: Diagnosing problems, Next: Credits, Prev: Color, Up: Top + +7 Diagnosing problems +********************* + +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. + +* Menu: + +* Contact information:: Who to ask. +* Debug options:: Getting diagnostics. + + +File: dvipng.info, Node: Contact information, Next: Debug options, Up: Diagnosing problems + +7.1 Contact information +======================= + +Bug reports should be sent to <dvipng@nongnu.org>. + + Questions, suggestions for new features, pleas for help, and/or +praise should go to <dvipng@nongnu.org>. For more information on this +mailing list, send a message with just the word `help' as subject or +body to <dvipng-request@nongnu.org> or look at +`http://lists.nongnu.org/mailman/listinfo/dvipng'. + + Offers to support further development will be appreciated. For +developer access, ask on <dvipng@nongnu.org>. + + For details on the TeX path-searching library, and `mktexpk' +problems, *note Common problems: (kpathsea)Common problems. + + +File: dvipng.info, Node: Debug options, Prev: Contact information, Up: Diagnosing problems + +7.2 Debug options +================= + +The `-d' 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 `-1'. + + Some of these debugging options are actually provided by Kpathsea +(*note Debugging: (kpathsea)Debugging.). + + The classes are: +1 + Normal dvi op-codes + +2 + Virtual fonts + +4 + PK fonts + +8 + TFM files + +16 + Glyph rendering + +32 + FreeType calls + +64 + Encoding loads + +128 + Color specials + +256 + GhostScript specials + +512 + T1lib calls + +1024 + Kpathsea `stat' calls + +2048 + Kpathsea hash table lookups + +4096 + Kpathsea path element expansion + +8192 + Kpathsea path searches + + + +File: dvipng.info, Node: Credits, Next: Copying, Prev: Diagnosing problems, Up: Top + +8 Credits +********* + +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 (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 Ridderstro"m, Ezra Peisach, +William H Wheeler, Thomas Klausner, Harald Koenig, Adrian Bunk, Kevin +Smith, Jason Riedy, Wolfram Krause, and Reinhard Kotucha. + + +File: dvipng.info, Node: Copying, Next: Index, Prev: Credits, Up: Top + +9 Copying +********* + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2 of the License, or (at your +option) any later version. + + 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 +General Public License for more details. + + You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software Foundation, +Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + + + +Copyright (C) 2002-2006 Jan-AAke Larsson + + +File: dvipng.info, Node: Index, Prev: Copying, Up: Top + +Index +***** + + +* Menu: + +* -dSAFER: Option details. (line 166) +* absolute page number, and -l: Option details. (line 139) +* absolute page number, and -p: Option details. (line 187) +* antialiasing levels, number of: Option details. (line 241) +* background color (option): Option details. (line 40) +* base resolution, setting: Option details. (line 35) +* baseline reporting: Option details. (line 76) +* color specifications: Color specifications. + (line 6) +* command-line options: Command-line options. + (line 6) +* compilation: Installation. (line 6) +* compression: Option details. (line 302) +* configuration, of dvipng: Installation. (line 6) +* dark fonts: Option details. (line 119) +* debugging <1>: Diagnosing problems. (line 6) +* debugging: Option details. (line 54) +* depth reporting: Option details. (line 76) +* exit on erroneous images: Option details. (line 252) +* first page printed: Option details. (line 187) +* follow mode: Option details. (line 97) +* font generation, avoiding: Option details. (line 156) +* forcing palette output: Option details. (line 196) +* foreground color (option): Option details. (line 91) +* FreeType font rendering: Option details. (line 105) +* fuzzy images: Option details. (line 119) +* gamma: Option details. (line 119) +* GhostScript and -dSAFER: Option details. (line 166) +* GhostScript, turning off: Option details. (line 161) +* GIF image format: Option details. (line 125) +* height reporting: Option details. (line 132) +* installation, of dvipng: Installation. (line 6) +* invoking dvipng: Basic usage. (line 6) +* last page printed: Option details. (line 139) +* light fonts: Option details. (line 119) +* magnification, overriding DVI: Option details. (line 294) +* Metafont mode, specifying: Option details. (line 148) +* mktexpk, avoiding: Option details. (line 156) +* mode name, specifying: Option details. (line 148) +* no erroneous images: Option details. (line 206) +* offset pages: Option details. (line 181) +* option, details of: Option details. (line 6) +* options, dvipng: Command-line options. + (line 6) +* options, reading from standard input: Option details. (line 11) +* options, summary: Option summary. (line 6) +* output resolution, setting: Option details. (line 60) +* output, redirecting: Option details. (line 174) +* page range: Option details. (line 219) +* page, first printed: Option details. (line 187) +* page, last printed: Option details. (line 139) +* physical page number, and -l: Option details. (line 139) +* physical page number, and -p: Option details. (line 187) +* PNG image format: Option details. (line 215) +* PostScript inclusion problems: Encapsulated PostScript. + (line 21) +* problems: Diagnosing problems. (line 6) +* quality: Option details. (line 241) +* quiet operation: Option details. (line 237) +* reverse pagination: Option details. (line 248) +* silent operation: Option details. (line 237) +* standard input, reading options from: Option details. (line 11) +* standard output, output to: Option details. (line 174) +* T1lib font rendering: Option details. (line 269) +* transparent border fallback color: Option details. (line 25) +* transparent border width: Option details. (line 25) +* trouble: Diagnosing problems. (line 6) +* truecolor output: Option details. (line 283) +* warnings, suppressing: Option details. (line 237) + + + +Tag Table: +Node: Top317 +Node: Introduction1204 +Node: Installation3185 +Node: Prerequisites3532 +Node: Configure5914 +Node: Build/install7953 +Node: Installation outside the texmf tree8421 +Node: Advice for non-privileged users9128 +Node: Basic usage10136 +Node: Command-line options11263 +Node: Option summary11687 +Node: Option details13807 +Node: Graphics29131 +Node: Encapsulated PostScript29696 +Node: Bitmapped graphics31039 +Node: Color32239 +Node: Color specifications32574 +Node: Color specials33673 +Node: Diagnosing problems35085 +Node: Contact information35568 +Node: Debug options36309 +Node: Credits37344 +Node: Copying38493 +Node: Index39322 + +End Tag Table |