📄 devices.txt
字号:
This example sets the gamma for r, g, and b to 3, which seems to work
reasonably well in practice.
GENERAL TIPS:
For all the above printers, the paper is critically important to the
final results. Smoother, less fibrous paper is generally better (and
suggested types are given in the printer manuals). In particular, the
special ink-jet paper can make a big difference; the colours are
brighter, but most importantly, there is almost no colour bleed, even
with adjacent areas of very heavy inking. Similarly, the special coated
transparencies also work well (and ordinary transparencies do not work
at all!)
The unix-lpr.sh provides one example of setting up a multi-option
colour postscript lpr queue on Unix systems, and includes the ability
to choose a range of different colour options and printer accounting
and error logging.
CAVEAT EMPTOR!:
It is not always easy for me to test all of these drivers, as the only
colour printer I have here is the DeskJet 500C. I rely on others testing
drivers for the additional machines and reporting their findings back to
me.
HP's 600x300 dpi resolution-enhanced mode for inkjet printers
=============================================================
This feature is available on HP's more recent inkjet printers,
including the Deskjet 520 (mono) 540 (mono or colour) and 560C (mono
and colour).
The colour and monochrome drivers for the HP deskjet 550c are
(probably) the best you will get for use with ghostscript, for the
following reasons:
These printers do not offer true 600x300 dpi resolution. Those that
print in colour are strictly 300x300 dpi in colour mode, while in mono
mode there is a pseudo 600x300 dot mode, with the restriction that you
can't print two adjacent dots. Thus, in effect what you have is 600 dpi
dot positioning, but on average you don't get more dots per line.
What this does give is the possibility to have eg. sharper character
outlines, as you can place dots on the edges nearer to their ideal
positions - this is why it is worth doing.
However, HP will not support user-level programming of this
resolution-enhanced mode, one reason being that (I understand) all the
dot spacing has to be done by the driver, and if you get it wrong, you
can actually damage the print head.
To summarise, you may lose a smidgin of (potential) text clarity using
the 550c drivers (cdj550, cdjcolor, cdjmono etc.), but other than that,
they are the ones for the job.
### ------------------------------ End --------------------------------- ###
### ------------------- Apple Dot Matrix Printer ---------------------- ###
This section was written by Mark Wedel.
The Dot Matrix Driver (DMP) driver is a simple driver I wrote. It
could more more efficient, but it seems to print the images fine.
The Dot Matrix Printer was a parallel predecessor to the Imagewriter
printer. As far as I know, the Imagewriter commands are a superset
to those of the Dot Matrix printer, so the driver should work fine at
generating output that can be printed on Imagewriters.
A few notes (from the gdevadmp.c file):
* To print out images, it sets the printer for unidirection printing
* and 15 cpi (120 dpi). IT sets line feed to 1/9 of an inch (72 dpi).
* When finished, it sets things back to bidirection print, 1/8" line
* feeds, and 12 cpi. There does not appear to be a way to reset
* things to initial values.
*
* This code does not set for 8 bit characters (which is required). It
* also assumes that carriage return/newline is needed, and not just
* carriage return. These are all switch settings on the DMP, and
* I have configured them for 8 bit data and cr only.
*
* You can search for the strings Init and Reset (in devdemp.c) to find the
* strings that set up the printer and clear things when finished, and change
* them to meet your needs.
*
* Also, you need to make sure that the printer daemon (assuming unix)
* doesn't change the data as it is being printed. I have set my
* printcap file (sunos 4.1.1) with the string:
* ms=pass8,-opost
* and it works fine.
Mark Wedel
master@cats.ucsc.edu
### ------------------------------ End --------------------------------- ###
### ------------------ The Epson Stylus Color printer ------------------ ###
/*
Epson Stylus-Color Driver, contributed by Gunther Hess (address: see below)
I N T R O D U C T I O N
=======================
This documentation accompanies version 1.90 of the stcolor-driver.
Compared to version 1.21 (gs3.53) there are just a few, but somehow
important chages:
- Default: noWeave escpBand=1 (-> default works with all known models)
- added Parameter "Softweave" (useful only with Original STC and PRO-Series)
- added Compile-Option (-DSTC_SIGNAL) to catch interrupts during printing
(thanks to Frederic Loyer)
- compatibility with ansi2knr
- compatibility with 64Bit Processors
- clarification of usage with Pro-XL and Stylus Color II
A Note on the Version-Numbering: Version 1.xx comes to it's end.
Any 1.xx > 1.90 will have only Bug-Fixes. Maybe that Version 2.xx
comes to life, if this is the case it will include full support of
the newer models.
U S A G E
=========
This driver is selected with "-sDEVICE=stcolor" and produces output for an
Epson Stylus-Color at 360DpI resolution by default, but it can do much
more with this printer and with significantly better quality, than with
the default-mode and it can also produce code for the monochrome-versions
of this printer.
This can be achieved either via command-line options or via ghostscript-input.
For convienience a Postscript-File is supplied, that can be used as initial
inputfile. Thus, assumed that ghostscript is invoked via "gs" on your computer,
try the following command:
gs -sDEVICE=stcolor -rXDPIxYDPI stcolor.ps ... (e.g.: your input-files)
were XDPI is one of 180/360/720 and YDPI is one of (90/)180/360/720. The result
should be significantly better, you may use "stcolor.ps" with other devices
too, but I do not recommend this, since it does nothing then. "stcolor.ps"
should be available with binary distributions and should reside in the
ghostscript input-directory. Thus if ghostscript is part of your
printer-spooler, you can insert
(stcolor.ps) findlibfile { pop run } if pop
to the files you want to run through the improved algorithms and you may want
to adapt this file to your specific needs. The methods and options for this
are described here, but this description is restricted to the gs-options, while
their manipulation at the Postscript-level is documented in "language.txt" and
in the mentioned "stcolor.ps".
Next thing is to explain the options (as written on my unix-system).
The order is somehow related to their use during the printing-Process:
-dUnidirectional - Force unidirectional printing,
recommended for transparencies
-dMicroweave - enable the printers "microweave"-feature.
-dnoWeave - disable any Weaving, overrides -dMicroweave
-dSoftweave - enable internal weaving of the driver.
* Weave-Note: Softweave works *ONLY* with the original Stylus-Color
* and the PRO-Series.
-sDithering="name" - select another dithering-algorithm, available are:
"gscmyk" : fast color-output, with CMYK-ProcessColorModel [D]
"gsmono" : fast black & white output
"gsrgb" : fast color-output, with RGB-ProcessColorModel
"fsmono" : Floyd-Steinberg, Monochrome
"fsrgb" : Floyd-Steinberg, with RGB-ProcessColorModel
(Almost identical to cdj550/mjcxxx-Algorithm)
"fsx4" : Floyd-Steinberg, with CMYK-ProcessColorModel
(shares code with fsmono & fsrgb, but is
algorithmically really bad)
"fscmyk" : Floyd-Steinberg, with CMYK-ProcessColorModel
and proper modifications for CMYK
"hscmyk" : modified Floyd-Steinberg with CMYK-Model
("hs" stands for "hess" nor for "high speed",
but the major difference to "fscmyk" is speed)
"fs2" : algorithm by Steven Singer (RGB)
should be identical to escp2cfs2.
-dBitsPerPixel=1...32 - number of bits used for pixel-storage, the larger
the value, the better the quality - at least in
theory. In fsrgb one can gain some speed, when
restricting to 24 Bits, rather than the default
of 30.
-dFlag0 - causes some algorithms to select a uniform
initialisation rather than a set of random-values.
May yield "sharper" image-impression at the
cost of "dithering-atrefacts".
(applies to hscmyk and all fs-modi, except for fs2,
which always uses a constant initialization.)
-dFlag1 ... -dFlag4 - available to future algorithms.
-dColorAdjustMatrix={3/9/16 x float}'
- This is a Matrix to adjust the colors. Values should
be between -1.0 and 1.0, and the number of
values depend on the colormodel used by the
selected algorithm. In RGB- and CMYK-modi a matrix
with 1.0 on the diagonal produces no transformation.
(I could not identify a similar feature at the
language-level, so this option was implemented, it
is really required, but I don't know reasonable
values yet.)
-dCtransfer='{float float ...}', -dMtransfer=..., -dY..., -dK... or
-dRtransfer='{float float ...}', -dG..., -dB... or
-dKtransfer='{float float ...}'
- which is used, depends on the algorithm, which
maybe either either CMYK, RGB or monochrome.
The values are arrays of floats in the range from
0 to 1.0, which represent the visible
color-intensity for the device. One may achieve
similar effects with "setcolortransfer" at the
language-level, but this takes more time and the
underlying-code for the driver-specific parameters
is still required. The size of the arrays is
arbitrary and the defaults are {0.0 1.0}, which
is a linear characteristic, most of the code in
"stcolor.ps" are better transfer-arrays.
-dKcoding='{float...}', -dC..., -dM... etc.
- this are again arrays between 0.0 and 1.0, and
they control the internal coding of the
color-values. Clever usage of this arrays may
yield further enhancements, but no experience yet.
[To be discontinued with version >= 2.x]
-sModel=st800 - causes output to be suitable for the monochrome
Stylus 800 (no Weaving, no Color).
-sOutputCode= - can be either "plain", "runlength" or "deltarow"
and changes the ESC/P2 (TM) coding-technique used
by the driver. The default is to use the
runlength-encoding. "plain" selects uncompressed
encoding and yields enormeous amounts of data to
generated.
-descp_Band=1/8/15/24 - Number of Nozzles of scanlines used in printing.
Useful only with -dnoWeave. Larger Values yield
smaller code, but this doesn't increase the
Printing-Speed.
-descp_Width= - Number of Pixels Printed in each scan-Line.
(Useful when tuning Margins only, se below)
-descp_Height= - Length of the entire Page in Pixels
(Parameter of "ESC(C" in default initialization)
-descp_Top= - Top-Margin in scanlines.
(1st Parameter of "ESC(c" in default initialization)
-descp_Bottom= - Bottom-Margin in scanlines.
(2nd Parameter of "ESC(c" in default initialization)
-sescp_Init="..." - Override for the initialization-sequence.
(Must set Graphics-Mode-1 & Units)
-sescp_Release="..." - Overrides the release-sequence.
(ESC @ FF by default)
Valid Resolutions:
any, ESC/P2 allows in theory, but only the following are
known to work with most printers:
-r360x360 (Default)
-r720x720 (not on STC-IIs ? and st800)
Valid Option Combinations: (Stylus I & PRO-Series only)
escp_Band ?Weave escp_Band/#Passes
180x 90 15 no-Weave
180x180 1 , 8, 24 no/u-Weave 15/2 sWeave
180x360 15/4 sWeave
180x720 15/8 sWeave
360x 90 15 no-Weave
360x180 1, 8, 24 no/u-Weave 15/2 sWeave
360x360 1, 8, 24 no/u-Weave 15/4 sWeave
360x720 15/8 sWeave
720x 90 15 no-Weave
720x180 15/2 sWeave
720x360 15/4 sWeave
720x720 1 no/u-Weave 15/8 sWeave
*************************************************************************
*************************************************************************
** **
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -