{
    "mode": "info",
    "parameter": "dvips",
    "section": "",
    "url": "https://www.chedong.com/phpMan.php/info/dvips/json",
    "generated": "2026-06-16T10:09:45Z",
    "sections": {
        "3 Invoking Dvips": {
            "content": "Dvips reads a DVI file as output by (for example) TeX, and converts it\nto PostScript, taking care of builtin or downloaded PostScript fonts,\nfont reencoding, color, etc.  These features are described in other\nchapters in this document.\n\nThere many ways to control Dvips' behavior: configuration files,\nenvironment variables, and command-line options.\n\n* Menu:\n\n* Basic usage::\n* Command-line options::\n* Environment variables::\n* Config files::\n\nFile: dvips.info,  Node: Basic usage,  Next: Command-line options,  Up: Invoking Dvips\n",
            "subsections": [
                {
                    "name": "3.1 Basic usage of Dvips",
                    "content": "To use Dvips at its simplest, simply type\n\ndvips foo\n\nwhere 'foo.dvi' is the output of TeX that you want to print.  The\ndefault output is to a corresponding file 'foo.ps'; Dvips may also have\nbeen locally configured to output directly to a printer by default.\n\nIf you use fonts that have not been used on your system before, they\nmay be automatically generated; this process can take a few minutes, so\nprogress reports appear by default.  The next time that document is\nprinted, these fonts will have been saved in the proper directories, so\nprinting will go much faster.  (If Dvips tries to endlessly generate the\nsame fonts over and over again, it hasn't been installed properly.\n*Note (kpathsea)Unable to generate fonts::.)\n\nMany options are available (see the next section).  For a brief\nsummary of available options, run\n\ndvips --help\n\nFile: dvips.info,  Node: Command-line options,  Next: Environment variables,  Prev: Basic usage,  Up: Invoking Dvips\n"
                },
                {
                    "name": "3.2 Command-line options",
                    "content": "Dvips has a plethora of command line options.  Reading through this\nsection will give a good idea of the capabilities of the driver.\n\n* Menu:\n\n* Option summary::              Quick listing, from Dvips -help.\n* Option details::              More information about each option.\n\nFile: dvips.info,  Node: Option summary,  Next: Option details,  Up: Command-line options\n\n\nHere is a handy summary of the options; it is printed out when you run\nDvips with no arguments or with the standard '--help' option.\n\nUsage: dvips [OPTION]... FILENAME[.dvi]\nConvert DVI input files to PostScript.\nSee http://tug.org/dvips/ for the full manual and other information.\n\nOptions:\n-a*  Conserve memory, not time       -A   Print only odd (TeX) pages\n-b # Page copies, for posters e.g.   -B   Print only even (TeX) pages\n-c # Uncollated copies               -C # Collated copies\n-d # Debugging                       -D # Resolution\n-e # Maxdrift value                  -E*  Try to create EPSF\n-f*  Run as filter                   -F*  Send control-D at end\n-G*  Shift low chars to higher pos.\n-h f Add header file\n-i*  Separate file per section\n-j*  Download fonts partially\n-k*  Print crop marks                -K*  Pull comments from inclusions\n-l # Last page                       -L*  Last special papersize wins\n-m*  Manual feed                     -M*  Don't make fonts\n-mode s Metafont device name\n-n # Maximum number of pages         -N*  No structured comments\n-noomega  Disable Omega extensions\n-noptex   Disable pTeX extensions\n-o f Output file                     -O c Set/change paper offset\n-p # First page                      -P s Load config.$s\n-pp l Print only pages listed\n-q*  Run quietly\n-r*  Reverse order of pages          -R*  Run securely\n-s*  Enclose output in save/restore  -S # Max section size in pages\n-t s Paper format                    -T c Specify desired page size\n-title s Title in comment\n-u s PS mapfile                      -U*  Disable string param trick\n-v   Print version number and quit   -V*  Send downloadable PS fonts as PK\n-x # Override dvi magnification      -X # Horizontal resolution\n-y # Multiply by dvi magnification   -Y # Vertical resolution\n-z*  Hyper PS                        -Z*  Compress bitmap fonts\n# = number   f = file   s = string  * = suffix, `0' to turn off\nc = comma-separated dimension pair (e.g., 3.2in,-32.1cm)\nl = comma-separated list of page ranges (e.g., 1-4,7-9)\n\nEmail bug reports to tex-k@mail.tug.org.\n\nFile: dvips.info,  Node: Option details,  Prev: Option summary,  Up: Command-line options\n\n\nMany of the parameterless options listed here can be turned off by\nsuffixing the option with a zero ('0'); for instance, to turn off page\nreversal, use '-r0'.  Such options are marked with a trailing '*'.\n\n'-'\nRead additional options from standard input after processing the\ncommand line.\n\n'--help'\nPrint a usage message and exit.\n\n'--version'\nPrint the version number and exit.\n\n'-a*'\nConserve memory by making three passes over the DVI file instead of\ntwo and only loading those characters actually used.  Generally\nonly useful on machines with a very limited amount of memory, like\nsome PCs.\n\n'-A'\nPrint only the odd pages.  This option uses TeX page numbers, not\nphysical page numbers.\n\n'-b NUM'\nGenerate NUM copies of each page, but duplicating the page body\nrather than using the '/#copies' PostScript variable.  This can be\nuseful in conjunction with a header file setting 'bop-hook' to do\ncolor separations or other neat tricks.\n\n'-B'\nPrint only the even pages.  This option uses TeX page numbers, not\nphysical page numbers.\n\n'-bitmapfontenc OPTION'\nTurns bitmap font encoding to 'off', 'on' (no warnings for missing\nbitmap font encodings), or 'strict' (with warnings for missing\nbitmap font encodings).\n\n'-c NUM'\nGenerate NUM consecutive copies of every page, i.e., the output is\nuncollated.  This merely sets the builtin PostScript variable\n'/#copies'.\n\n'-C NUM'\nGenerate NUM copies, but collated (by replicating the data in the\nPostScript file).  Slower than the '-c' option, but easier on the\nhands, and faster than resubmitting the same PostScript file\nmultiple times.\n\n'-d NUM'\nSet the debug flags, showing what Dvips (thinks it) is doing.  This\nwill work unless Dvips has been compiled without the 'DEBUG' option\n(not recommended).  *Note Debug options::, for the possible values\nof NUM.  Use '-d -1' as the first option for maximum output.\n\n'-D NUM'\nSet both the horizontal and vertical resolution to NUM, given in\ndpi (dots per inch).  This affects the choice of bitmap fonts that\nare loaded and also the positioning of letters in resident\nPostScript fonts.  Must be between 10 and 10000.  This affects both\nthe horizontal and vertical resolution.  If a high resolution\n(something greater than 400 dpi, say) is selected, the '-Z' flag\nshould probably also be used.  If you are using fonts made with\nMetafont, such as Computer Modern, 'mktexpk' needs to know about\nthe value for NUM that you use or Metafont will fail.  See the file\n<ftp://ftp.tug.org/tex/modes.mf> for a list of resolutions and mode\nnames for most devices.\n\n'-e NUM'\nMaximum drift in pixels of each character from its 'true'\nresolution-independent position on the page.  The default value of\nthis parameter is resolution dependent (it is the number of entries\nin the list [100, 200, 300, 400, 500, 600, 800, 1000, 1200, 1600,\n2000, 2400, 2800, 3200, ...] that are less than or equal to the\nresolution in dots per inch).  Allowing individual characters to\n'drift' from their correctly rounded positions by a few pixels,\nwhile regaining the true position at the beginning of each new\nword, improves the spacing of letters in words.\n\n'-E*'\nGenerate an EPSF file with a tight bounding box.  This only looks\nat marks made by characters and rules, not by any included\ngraphics.  In addition, it gets the glyph metrics from the TFM\nfile, so characters that print outside their enclosing TFM box may\nconfuse it.  In addition, the bounding box might be a bit too loose\nif the character glyph has significant left or right side bearings.\nNonetheless, this option works well enough for creating small EPSF\nfiles for equations or tables or the like.  (Of course, Dvips\noutput, especially when using bitmap fonts, is resolution-dependent\nand thus does not make very good EPSF files, especially if the\nimages are to be scaled; use these EPSF files with care.)  For\nmultiple page input files, also specify '-i' to get each page as a\nseparate EPSF file; otherwise, all the pages are overlaid in the\nsingle output file.\n\n'-f*'\nRun as a filter.  Read the DVI file from standard input and write\nthe PostScript to standard output.  The standard input must be\nseekable, so it cannot be a pipe.  If your input must be a pipe,\nwrite a shell script that copies the pipe output to a temporary\nfile and then points Dvips at this file.  This option also disables\nthe automatic reading of the 'PRINTER' environment variable; use\n'-P$PRINTER' after the '-f' to read it anyway.  It also turns off\nthe automatic sending of control-D if it was turned on with the\n'-F' option or in the configuration file; use '-F' after the '-f'\nto send it anyway.\n\n'-F*'\nWrite control-D (ASCII code 4) as the very last character of the\nPostScript file.  This is useful when Dvips is driving the printer\ndirectly instead of working through a spooler, as is common on\npersonal systems.  On systems shared by more than one person, this\nis not recommended.\n\n'-G*'\nShift non-printing characters (ASCII 0-32, 127) to higher-numbered\npositions.  This was useful to work around bugs in old versions of\nAdobe's PDF reader.  It's more likely to cause problems nowadays.\n\n'-h NAME'\nPrepend NAME as an additional header file, or, if NAME is '-',\nsuppress all header files.  Any definitions in the header file get\nadded to the PostScript 'userdict'.\n\n'-i*'\nMake each section be a separate file; a \"section\" is a part of the\ndocument processed independently, most often created to avoid\nmemory overflow.  The filenames are created replacing the suffix of\nthe supplied output file name by a three-digit sequence number.\nThis option is most often used in conjunction with the '-S' option\nwhich sets the maximum section length in pages; if '-i' is\nspecified and '-S' is not, each page is output as a separate file.\nFor instance, some phototypesetters cannot print more than ten or\nso consecutive pages before running out of steam; these options can\nbe used to automatically split a book into ten-page sections, each\nto its own file.\n\nOn the other hand, if your document uses very large fonts or very\nlarge included figures, Dvips might take it upon itself to split\nthe output into unwanted sections, to try to avoid overflowing\nprinter memory.  *Note Headers and memory usage::, for ways to\nhandle this.\n\n'-j*'\nDownload only needed characters from Type 1 fonts.  This is the\ndefault in the current release.  Some debugging flags trace this\noperation (*note Debug options::).  You can also control partial\ndownloading on a per-font basis (*note psfonts.map::).\n\n'-k*'\nPrint crop marks.  This option increases the paper size (which\nshould be specified, either with a paper size special or with the\n'-T' option) by a half inch in each dimension.  It translates each\npage by a quarter inch and draws cross-style crop marks.  It is\nmostly useful with typesetters that can set the page size\nautomatically.  This works by downloading 'crop.pro'.\n\n'-K*'\nRemove comments in included PostScript graphics, font files, and\nheaders; only necessary to get around bugs in spoolers or\nPostScript post-processing programs.  Specifically, the '%%Page'\ncomments, when left in, often cause difficulties.  Use of this flag\ncan cause other graphics to fail, however, since the PostScript\nheader macros from some software packages read portion the input\nstream line by line, searching for a particular comment.\n\n'-l [=]NUM'\nThe last page printed will be the first one numbered NUM.  Default\nis the last page in the document.  If NUM is prefixed by an equals\nsign, then it (and the argument to the '-p' option, if specified)\nis treated as a physical (absolute) page number, rather than a\nvalue to compare with the TeX '\\count0' values stored in the DVI\nfile.  Thus, using '-l =9' will end with the ninth page of the\ndocument, no matter what the pages are actually numbered.\n\n'-L*'\nBy default or with '-L1', the last 'papersize' special wins; with\n'-L0', the first special wins.  *Note 'papersize' special::.\n\n'-m*'\nSpecify manual feed, if supported by the output device.\n\n'-mode MODE'\nUse MODE as the Metafont device name for path searching and font\ngeneration.  This overrides any value from configuration files.\nWith the default paths, explicitly specifying the mode also makes\nthe program assume the fonts are in a subdirectory named MODE.\n*Note TeX directory structure: (kpathsea)TeX directory structure.\nIf Metafont does not understand the MODE name, see *note\n(kpathsea)Unable to generate fonts::.\n\n'-M*'\nTurns off automatic font generation ('mktexpk').  If 'mktexpk', the\ninvocation is appended to a file 'missfont.log' (by default) in the\ncurrent directory.  You can then execute the log file to create the\nmissing files after fixing the problem.  If the current directory\nis not writable and the environment variable or configuration file\nvalue 'TEXMFOUTPUT' is set, its value is used.  Otherwise, nothing\nis written.  The name 'missfont.log' is overridden by the\n'MISSFONTLOG' environment variable or configuration file value.\n\n'-n NUM'\nPrint at most NUM pages.  Default is 100000.\n\n'-N*'\nTurns off generation of structured comments such as '%%Page'; this\nmay be necessary on some systems that try to interpret PostScript\ncomments in weird ways, or on some PostScript printers.  Old\nversions of TranScript in particular cannot handle modern\nEncapsulated PostScript.  Beware: This also disables page movement,\netc., in PostScript viewers such as Ghostview.\n\n'-noomega'\nDisable the use of Omega extensions when interpreting DVI files.\nBy default, the additional opcodes '129' and '134' are recognized\nby Dvips as Omega or pTeX extensions and interpreted as requests to\nset 2-byte characters.\n\n'-noptex'\nDisable the use of pTeX extensions when interpreting DVI files.  By\ndefault, the additional opcodes '130' and '135' are recognized by\nDvips as Omega extensions and interpreted as requests to set 3-byte\ncharacters, and '255' as request to change the typesetting\ndirection.\n\nThe only drawback is that the virtual font array will (at least\ntemporarily) require 65536 or more positions instead of the default\n256 positions, i.e., the memory requirements of Dvips will be\nsomewhat larger.  If you find this unacceptable or encounter\nanother problem with the Omega or pTeX extensions, you can switch\noff the pTeX extension by using '-noptex', or both by using\n'-noomega' (but please do send a bug report if you find such\nproblems, *note (kpathsea)Bugs::).\n\n'-o NAME'\nSend output to the file NAME.  If '-o' is specified without NAME\n(i.e., it is the last thing on the command line), the default is\n'FILE.ps' where the input DVI file was 'FILE.dvi'.  If '-o' isn't\ngiven at all, the configuration file default is used.\n\nIf NAME is '-', output goes to standard output.  If the first\ncharacter of NAME is '!' or '|', then the remainder will be used as\nan argument to 'popen'; thus, specifying '|lpr' as the output file\nwill automatically queue the file for printing as usual.  (The\nMS-DOS version will print to the local printer device 'PRN' when\nNAME is '|lpr' and a program by that name cannot be found.)\n\n'-o' disables the automatic reading of the 'PRINTER' environment\nvariable, and turns off the automatic sending of control-D. See the\n'-f' option for how to override this.\n\n'-O X-OFFSET,Y-OFFSET'\nMove the origin by X-OFFSET,Y-OFFSET, a comma-separated pair of\ndimensions such as '.1in,-.3cm' (*note 'papersize' special::).  The\norigin of the page is shifted from the default position (of one\ninch down, one inch to the right from the upper left corner of the\npaper) by this amount.  This is usually best specified in the\nprinter-specific configuration file.\n\nThis is useful for a printer that consistently offsets output pages\nby a certain amount.  You can use the file 'testpage.tex' to\ndetermine the correct value for your printer.  Be sure to do\nseveral runs with the same 'O' value--some printers vary widely\nfrom run to run.\n\nIf your printer offsets every other page consistently, instead of\nevery page, your best recourse is to use 'bop-hook' (*note\nPostScript hooks::).\n\n'-p [=]NUM'\nThe first page printed will be the first one numbered NUM.  Default\nis the first page in the document.  If NUM is prefixed by an equals\nsign, then it (and the argument to the '-l' option, if specified)\nis treated as a physical (absolute) page number, rather than a\nvalue to compare with the TeX '\\count0' values stored in the DVI\nfile.  Thus, using '-p =3' will start with the third page of the\ndocument, no matter what the pages are actually numbered.\n\n'-pp FIRST-LAST'\nPrint pages FIRST through LAST; equivalent to '-p FIRST -l LAST',\nexcept that multiple '-pp' options accumulate, unlike '-p' and\n'-l'.  The '-' separator can also be ':'.\n\n'-P PRINTER'\nRead the configuration file 'config.PRINTER' ('PRINTER.cfg' on\nMS-DOS), which typically sets the output name (most likely 'o |lpr\n-PPRINTER'), resolution, Metafont mode, and perhaps other\nprinter-specific defaults.  It works best to put sitewide defaults\nin the one master 'config.ps' file and only things that vary from\nprinter to printer in the 'config.PRINTER' files; 'config.ps' is\nread before 'config.PRINTER'.\n\nA configuration file for eventual creation of Adobe PDF files is\nprovided in 'config.pdf' and thus can be loaded with '-Ppdf'.  It\nwill try to include Type 1 outline fonts into the PostScript file\n(*note Hypertext caveats::).\n\nIf no '-P' or '-o' is given, the environment variable 'PRINTER' is\nchecked.  If that variable exists, and a corresponding\n'config.PRINTER' ('PRINTER.cfg' on MS-DOS) file exists, it is read.\n*Note Configuration file searching::.\n\n'-q*'\nRun quietly.  Don't chatter about pages converted, etc., and report\nno warnings (only errors) to standard error.\n\n'-r*'\nOutput pages in reverse order.  By default, page 1 is output first.\n\n'-R'\nRun securely.  '-R2' disables both shell command execution in\n'\\special' (via '`', *note Dynamic creation of graphics::) and\nconfig files (via the 'E' option, *note Configuration file\ncommands::) and opening of any absolute or '..'-relative filenames.\n'-R1', the default, forbids shell escapes but allows absolute\nfilenames.  '-R0' allows both.\n\n'-s*'\nEnclose the output in a global save/restore pair.  This causes the\nfile to not be truly conformant, and is thus not recommended, but\nis useful if you are driving a deficient printer directly and thus\ndon't care too much about the portability of the output to other\nenvironments.\n\n'-S NUM'\nSet the maximum number of pages in each 'section'.  This option is\nmost commonly used with the '-i' option; see its description above\nfor more information.\n\n'-t PAPERTYPE'\nSet the paper type to PAPERTYPE, usually defined in one of the\nconfiguration files, along with the appropriate PostScript code to\nselect it (*note Config file paper sizes::).\n- You can also specify a PAPERTYPE of 'landscape', which rotates\na document by 90 degrees.\n- To rotate a document whose paper type is not the default, you\ncan use the '-t' option twice, once for the paper type, and\nonce for 'landscape'.\n- In general, you should not use any '-t' option when using a\n'papersize' special, which some LaTeX packages (e.g.,\n'hyperref') insert.\n- One exception is when using a nonstandard paper size that is\nnot already defined in 'config.ps'; in this case, you need to\nspecify '-t unknown'.\n- Another exception is when producing multi-page files for\nfurther processing; use '-t nopaper' to omit any paper size\ninformation in the output.  (If you just have a single page\ndocument, you can use '-E' to get pure EPSF output.)\n\n'-title STRING'\nUse STRING as the title in the generated PostScript ('%%Title').\nIf not specified, the default is the basename of the input file;\nfor example, running 'dvips /foo/bar.dvi' will have a '%%Title' of\n'bar.dvi'.\n\n'-T HSIZE,VSIZE'\nSet the paper size to (HSIZE,VSIZE), a comma-separated pair of\ndimensions such as '.1in,-.3cm' (*note 'papersize' special::).  It\noverrides any paper size special in the DVI file.  Be careful, as\nthe paper size will stick to a predefined size if there is one\nclose enough.  To disable this behavior, use '-tunknown'.\n\n'-u PSMAPFILE'\nSet PSMAPFILE to be the file that dvips uses for looking up\nPostScript font aliases.  If PSMAPFILE begins with a '+' character,\nthen the rest of the name is used as the name of the map file, and\nthe map file is appended to the list of map files (instead of\nreplacing the list).  In either case, if the name has no extension,\nthen '.map' is added at the end.\n\n'-U*'\nDisable a PostScript virtual memory-saving optimization that stores\nthe character metric information in the same string that is used to\nstore the bitmap information.  This is only necessary when driving\nthe Xerox 4045 PostScript interpreter, which has a bug that puts\ngarbage on the bottom of each character.  Not recommended unless\nyou must drive this printer.\n\n'-v'\nPrint the dvips version number and exit.\n\n'-V*'\nDownload non-resident PostScript fonts as bitmaps.  This requires\nuse of 'mtpk' or 'gsftopk' or 'pstopk' or some combination thereof\nto generate the required bitmap fonts; these programs are supplied\nwith Dvips.  The bitmap must be put into 'psfonts.map' as the\ndownloadable file for that font.  This is useful only for those\nfonts for which you do not have real outlines, being downloaded to\nprinters that have no resident fonts, i.e., very rarely.\n\n'-x NUM'\nSet the magnification ratio to NUM/1000.  Overrides the\nmagnification specified in the DVI file.  Must be between 10 and\n100000.  It is recommended that you use standard magstep values\n(1095, 1200, 1440, 1728, 2074, 2488, 2986, and so on) to help\nreduce the total number of PK files generated.  NUM may be a real\nnumber, not an integer, for increased precision.\n\n'-X NUM'\nSet the horizontal resolution in dots per inch to NUM.\n\n'-y NUM'\nSet the magnification ratio to NUM/1000 times the magnification\nspecified in the DVI file.  See '-x' above.\n\n'-Y NUM'\nSet the vertical resolution in dots per inch to NUM.\n\n'-z*'\nPass 'html' hyperdvi specials through to the output for eventual\ndistillation into PDF. This is not enabled by default to avoid\nincluding the header files unnecessarily, and use of temporary\nfiles in creating the output.  *Note Hypertext::.\n\n'-Z*'\nCompress bitmap fonts in the output file, thereby reducing the size\nof what gets downloaded.  Especially useful at high resolutions or\nwhen very large fonts are used.  May slow down printing, especially\non early 68000-based PostScript printers.  Generally recommend\ntoday, and can be enabled in the configuration file (*note\nConfiguration file commands::).\n\nFile: dvips.info,  Node: Environment variables,  Next: Config files,  Prev: Command-line options,  Up: Invoking Dvips\n"
                },
                {
                    "name": "3.3 Environment variables",
                    "content": "Dvips looks for many environment variables, to define search paths and\nother things.  The path variables are read as needed, after all\nconfiguration files are read, so they override values in the\nconfiguration files.  (Except for 'TEXCONFIG', which defines where the\nconfiguration files themselves are found.)\n\n*Note (kpathsea)Path specifications::, for details of interpretation\nof path and other environment variables common to all Kpathsea-using\nprograms.  Only the environment variables specific to Dvips are\nmentioned here.\n\n'DVIPSDEBUG'\nWrite the absolute path names of any configuration or map files to\nstandard output, for debugging.  This isn't done by default because\nthese files are read even before the banner is printed.  For\nvoluminous additional debugging, set the environment variable\n'KPATHSEADEBUG' to '-1' (*note (kpathsea)Debugging::).  (If\n'KPATHSEADEBUG' is set to any value, it automatically turns on\n'DVIPSDEBUG'.)\n\n'DVIPSFONTS'\nDefault path to search for all fonts.  Overrides all the font path\nconfig file options and other environment variables (*note\n(kpathsea)Supported file formats::).\n\n'DVIPSHEADERS'\nDefault path to search for PostScript header files.  Overrides the\n'H' config file option (*note Configuration file commands::).\n\n'DVIPSMAKEPK'\nOverrides 'mktexpk' as the name of the program to invoke to create\nmissing PK fonts.  You can change the arguments passed to the\n'mktexpk' program with the 'MAKETEXPK' environment variable; *note\n(kpathsea)MakeTeX script arguments::.\n\n'DVIPSRC'\nSpecifies the name of the startup file (*note Configuration file\nsearching::) which is read after 'config.ps' but before any\nprinter-specific configuration files.\n\n'DVIPSSIZES'\nLast-resort sizes for scaling of unfound fonts.  Overrides the 'R'\ndefinition in config files (*note Configuration file commands::).\n\n'PRINTER'\nDetermine the default printer configuration file.  (Dvips itself\ndoes not use 'PRINTER' to determine the output destination in any\nway.)\n\n'TEXCONFIG'\nPath to search for Dvips' 'config.PRINTER' configuration files,\nincluding the base 'config.ps'.  Using this single environment\nvariable, you can override everything else.  (The printer-specific\nconfiguration files are called 'PRINTER.cfg' on MS-DOS, but\n'config.ps' is called by that name on all platforms.)\n\n'TEXPICTS'\nPath to search for included graphics files.  Overrides the 'S'\nconfig file option (*note Configuration file commands::).  If not\nset, 'TEXINPUTS' is looked for.  *Note (kpathsea)Supported file\nformats::.\n\nFile: dvips.info,  Node: Config files,  Prev: Environment variables,  Up: Invoking Dvips\n"
                },
                {
                    "name": "3.4 Dvips configuration files",
                    "content": "This section describes in detail the Dvips-specific 'config.*' device\nconfiguration files (called '*.cfg' on MS-DOS), which override the\n'texmf.cnf' configuration files generic to Kpathsea which Dvips also\nreads (*note (kpathsea)Config files::).\n\nFor information about installing these files, including a prototype\nfile you can copy, *note config.ps installation::.\n\n* Menu:\n\n* Configuration file searching:: Where config.* files are searched for.\n* Configuration file commands::  What can go in a config.* file.\n\nFile: dvips.info,  Node: Configuration file searching,  Next: Configuration file commands,  Up: Config files\n\n\nThe Dvips program loads many different configuration files, so that\nparameters can be set globally across the system, on a per-device basis,\nor individually by each user.\n\n1. Dvips first reads (if it exists) 'config.ps'; it is searched for\nalong the path for Dvips configuration files, as described in *note\n(kpathsea)Supported file formats::.\n\n2. A user-specific startup file is loaded, so individual users can\noverride any options set in the global file.  The environment\nvariable 'DVIPSRC', if defined, is used as the specification of the\nstartup file.  If this variable is undefined, Dvips uses a\nplatform-specific default name.  On Unix Dvips looks for the\ndefault startup file under the name '$HOME/.dvipsrc', which is in\nthe user's home directory.  On MS-DOS and MS-Windows, where users\ngenerally don't have their private directories, the startup file is\ncalled 'dvips.ini' and it is searched for along the path for Dvips\nconfiguration files (as described in *note (kpathsea)Supported file\nformats::.); users are expected to set this path as they see fit\nfor their taste.\n\n3. The command line is read and parsed: if the '-PDEVICE' option is\nencountered, at that point 'config.DEVICE' is loaded.  Thus, the\nprinter configuration file can override anything in the site-wide\nor user configuration file, and it can also override options in the\ncommand line up to the point that the '-P' option was encountered.\n(On MS-DOS, the printer configuration files are called\n'DEVICE.cfg', since DOS doesn't allow more than 3 characters after\nthe dot in filenames.)\n\n4. If no '-P' option was specified, and also the '-o' and '-f' command\nline options were not used, Dvips checks the environment variable\n'PRINTER'.  If it exists, then 'config.$PRINTER' ('$PRINTER.cfg' on\nMS-DOS) is loaded (if it exists).\n\nBecause the '.dvipsrc' file is read before the printer-specific\nconfiguration files, individual users cannot override settings in the\nlatter.  On the other hand, the 'TEXCONFIG' path can be set to anything,\nso the users can always define their own printer-specific configuration\nfiles to be found before the system's.\n\nA few command-line options are treated specially, in that they are\nnot overridden by configuration files:\n\n'-D'\nAs well as setting the resolution, this unsets the mode, if the\nmode was previously set from a configuration file.  If\n'config.$PRINTER' is read, however, any 'D' or 'M' lines from there\nwill take effect.\n\n'-mode'\nThis overrides any mode setting ('M' line) in configuration files.\n'-mode' does not affect the resolution.\n\n'-o'\nThis overrides any output setting ('o' line) in configuration\nfiles.\n\nThe purpose of these special cases is to (1) minimize the chance of\nhaving a mismatched mode and resolution (which 'mktexpk' cannot\nresolve), and (2) let command-line options override config files where\npossible.\n\nFile: dvips.info,  Node: Configuration file commands,  Prev: Configuration file searching,  Up: Config files\n\n\nMost of the configuration file commands are similar to corresponding\ncommand line options, but there are a few exceptions.  When they are the\nsame, we omit the description here.\n\nAs with command line options, many may be turned off by suffixing the\nletter with a zero ('0').\n\nWithin a configuration file, empty lines, and lines starting with a\nspace, asterisk, equal sign, percent sign, or pound sign are ignored.\nThere is no provision for continuation lines.\n\n'@ NAME HSIZE VSIZE'\nDefine paper sizes.  *Note Config file paper sizes::.\n\n'a*'\nMemory conservation.  Same as '-a', *note Option details::.\n\n'b #COPIES'\nMultiple copies.  Same as '-b', *note Option details::.\n\n'bitmapfontenc OPTION'\nTurns bitmap font encoding to 'off', 'on' (no warnings for missing\nbitmap font encodings), or 'strict' (with warnings for missing\nbitmap font encodings).\n\n'c FILENAME'\nInclude FILENAME as an additional configuration file, read\nimmediately.\n\n'D DPI'\nOutput resolution.  Same as '-D', *note Option details::.\n\n'e NUM'\nMax drift.  Same as '-e', *note Option details::.\n\n'E COMMAND'\nExecutes the command listed with 'system'(3); can be used to get\nthe current date into a header file for inclusion, for instance.\nPossibly dangerous; this may be disabled, in which case a warning\nwill be printed if the option is used (and warnings are not\nsuppressed).\n\n'f*'\n'F'\nRun as a filter.  Same as '-f', *note Option details::.\n\n'G*'\nShift low-numbered characters; obsolete.  Same as '-G', *note\nOption details::.\n\n'h HEADER'\nPrepend HEADER to output.  Same as 'h-', *note Option details::.\n\n'H PATH'\nUse PATH to search for PostScript header files.  The environment\nvariable 'DVIPSHEADERS' overrides this.\n\n'i N'\nMake multiple output files.  Same as '-i -S N', *note Option\ndetails::.\n\n'j*'\nPartially download Type 1 fonts.  Same as '-j', *note Option\ndetails::.\n\n'K*'\nRemove comments from included PostScript files.  Same as '-K',\n*note Option details::.\n\n'L*'\nIf zero, the first paper size specified is effective, else the\nlast.  Same as '-L', *note Option details::.\n\n'm NUM'\nDeclare NUM as the memory available for fonts and strings in the\nprinter.  The compile-time default is 180000, but this is typically\noverridden by 'config.ps' or other configuration files.  This value\nmust be accurate if memory conservation and document splitting is\nto work correctly.  To determine this value, send the following\nfile to the printer:\n\n%! Hey, we're PostScript\n/Times-Roman findfont 30 scalefont setfont 144 432 moveto\nvmstatus exch sub 40 string cvs show pop showpage\n\nThe number printed by this file is the total memory free; it is\nusually best to tell Dvips that the printer has slightly less\nmemory, because many programs download permanent macros that can\nreduce the memory in the printer.  Some systems or printers can\ndynamically increase the memory available to a PostScript\ninterpreter, in which case this file might return a ridiculously\nlow number; for example, the NeXT computer and Ghostscript.  In\nthese cases, a value of, say, 10 million is likely fine.\n\nTo go all out: If NUM is zero or negative, Dvips sets the available\nmemory to a very large number (the maximum integer value in C), the\nidea being that output is not to a printer and thus no splitting of\nthe output is desirable.  The Dvips config file 'config.maxmem' is\nprovided to do this conveniently, namely with 'dvips -Pmaxmem'.\n\n'M MODE'\nMetafont mode.  Same as '-mode', *note Option details::.\n\n'N*'\nDisable structured comments.  Beware: This also turns off\ndisplaying page numbers or changing to specific pagenumbers in\nPostScript viewers.  Same as '-N', *note Option details::.\n\n'o NAME'\nSend output to NAME.  Same as '-o', *note Option details::.  In the\nfile 'config.foo', a setting like this is probably appropriate:\no |lpr -Pfoo\nThe MS-DOS version will emulate spooling to 'lpr' by printing to\nthe local printer device 'PRN' if it doesn't find an executable\nprogram by that name in the current directory or along the 'PATH'.\n\n'O XOFF,YOFF'\nOrigin offset.  Same as '-O', *note Option details::.\n\n'p [+]NAME'\nExamine NAME for PostScript font aliases.  Default is\n'psfonts.map'.  This option allows you to specify different\nresident fonts that different printers may have.  If NAME starts\nwith a '+' character, then the rest of the name (after any leading\nspaces) is used as an additional map file; thus, it is possible to\nhave local map files pointed to by local configuration files that\nappend to the global map file.  This can be used for font families.\n\n'P PATH'\nUse PATH to search for bitmap PK font files is PATH.  The\n'PKFONTS', 'TEXPKS', 'GLYPHFONTS', and 'TEXFONTS' environment\nvariables override this.  *Note (kpathsea)Supported file formats::.\n\n'q*'\n'Q'\nRun quietly.  Same as '-q', *note Option details::.\n\n'r*'\nPage reversal.  Same as '-r', *note Option details::.\n\n'R NUM1 NUM2 ...'\nDefine the list of default resolutions for PK fonts.  If a font\nsize actually used in a document is not available and cannot be\ncreated, Dvips will scale the font found at the closest of these\nresolutions to the requested size, using PostScript scaling.  The\nresulting output may be ugly, and thus a warning is issued.  To\nturn this last-resort scaling off, use a line with just the 'R' and\nno numbers.\n\nThe given numbers must be sorted in increasing order; any number\nsmaller than the preceding one is ignored.  This is because it is\nbetter to scale a font up than down; scaling down can obliterate\nsmall features in the character shape.\n\nThe environment and config file values 'DVIPSSIZES' or 'TEXSIZES'\noverride this configuration file setting.\n\nIf no 'R' settings or environment variables are specified, a list\ncompiled in during installation is used.  This default list is\ndefined by the Makefile variable 'defaulttexsizes', defined in the\nfile 'make/paths.make'.\n\n's*'\nOutput global save/restore.  Same as '-s', *note Option details::.\n\n'S PATH'\nUse PATH to search for special illustrations (Encapsulated\nPostScript files or psfiles).  The 'TEXPICTS' and then 'TEXINPUTS'\nenvironment variables override this.\n\n'T PATH'\nUse PATH to search for TFM files.  The 'TFMFONTS' and then\n'TEXFONTS' environment variables overrides this.  This path is used\nfor resident fonts and fonts that can't otherwise be found.\n\n'U*'\nWork around bug in Xerox 4045 printer.  Same as '-U', *note Option\ndetails::.\n\n'V PATH'\nUse PATH to search for virtual font files.  This may be\ndevice-dependent if you use virtual fonts to simulate actual fonts\non different devices.\n\n'W [STRING]'\nIf STRING is supplied, write it to standard error after reading all\nthe configuration files; with no STRING, cancel any previous 'W'\nmessage.  This is useful in the default configuration file to\nremind users to specify a printer, for instance, or to notify users\nabout special characteristics of a particular printer.\n\n'X NUM'\nHorizontal resolution.  Same as '-X' (*note Option details::).\n\n'Y NUM'\nVertical resolution.  Same as '-Y' (*note Option details::).\n\n'Z*'\nCompress bitmap fonts.  Same as '-Z' (*note Option details::).\n\n'z*'\nDisables execution of system commands, like '-R' (*note Option\ndetails::).  If '-R' is specified on the command line, that takes\nprecedence.\n"
                }
            ]
        }
    },
    "flags": [],
    "examples": [],
    "see_also": []
}