'\" t '\" '\" DO NOT EDIT! This file is generated from foo2qpdl-wrapper.1in '\" '\" t .TH foo2qpdl-wrapper 1 "Sat Oct 08 16:38:08 2016" "foo2qpdl-wrapper 0.0" '\" '\" '\"========================================================================== '\" STRINGS and MACROS '\"========================================================================== '\" '\" Define strings for special characters that nroff doesn't have '\" '\" N.B. using .if cua to test for special characters did not work. '\" .if !'\*[.T]'ps' .ds ua up .if '\*[.T]'ps' .ds ua \(ua .if !'\*[.T]'ps' .ds da down .if '\*[.T]'ps' .ds da \(da .if !'\*[.T]'ps' .ds <- left .if '\*[.T]'ps' .ds <- \(<- .if !'\*[.T]'ps' .ds -> right .if '\*[.T]'ps' .ds -> \(-> '\" '\" bx - box a Courier string for making keycaps '\" '\" N.B. this mess is to make the line drawing come out only '\" if we are really generating postscript '\" .de bx .ie !'\*[.T]'ps' \{\ . RB [ \\$1 ]\\$2 .\} .el \{\ . ie !r ps4html \{\ '\" \(br\|\s\-1\f(CB\\$1\fP\s+1\|\(br\l'|0\(rn'\l'|0\(ul' . ft CW . nr par*bxw \w'\\$1'+.4m \Z'\v'.25m'\D'l 0 \-1m'\D'l \\n[par*bxw]u 0'\D'l 0 1m'\D'l \-\\n[par*bxw]u 0''\ \Z'\h'.2m'\s\-1\\$1\s+1'\ \h'\\n[par*bxw]u'\\$2 . ft P . \} . el \{\ . RB [ \\$1 ]\\$2 . \} .\} .. '\" '\" strings to set current color (null with old groff) '\" .if mred .ds red \m[red] .if mgreen .ds green \m[green] .if mblue .ds blue \m[blue] .if mblack .ds black \m[black] .if mblack .ds mP \mP '\" '\" fix for grotty + xterm. We call for orange, grotty outputs yellow, '\" but xterm displays yellow as orange. The cycle is complete. '\" .if n .defcolor orange rgb #ffff00 '\" '\" color \- set the current color (ignores request with old groff) '\" .de color .if mred \m[\\$1]\c .. '\" '\" colorword \- colorize a word (ignored by old groff) '\" .de colorword .ie m\\$1 \m[\\$1]\\$2\mP\c .el \\$2\c .. '\" '\" colbox \- colorize a word in a filled box '\" .de colbox .ie mred \M[\\$2]\ \v'+.167v'\ \D'P 0 \-0.9v \w'\\$3'u 0 0 +0.9v \-\w'\\$3'u 0'\ \v'\-.167v'\ \m[\\$1]\\$3\mP\MP .el \\$3\c .. '\" '\" Macros for doing pdfmarks '\" .de specialps .if '\*[.T]'ps' \\k_\X'ps: \\$*'\h'|\\n_u'\c .. '\" '\" pdfmark PDFMARKCODE '\" .ds pdfmarks .if d pdfmarks \{\ .de pdfmark . specialps exec [\\$1 pdfmark .. '\" '\" pdfdest LINKNAME '\" .de pdfdest .pdfmark "/Dest /\\$1 /View [/XYZ \-5 PL null] /DEST" .. '\" '\" pdfbookmark COUNT LINKNAME STRING '\" .de pdfbookmark . pdfmark "/View [/XYZ 44 730 1.0] /Count \\$1 /Dest /\\$2 /Title (\\$3) /OUT" .. '\" '\" Define the SH and SS macros to save pdfmark information '\" in "arrays" of numbers and strings. '\" .if !r rr_n \{\ .nr rr_n 0 1 .am SH . nr rr_levels!\\n+[rr_n] 2 . ds rr_labels!\\n[rr_n] \\$* . pdfdest Link\\n[rr_n] .. .am SS . nr rr_levels!\\n+[rr_n] 3 . ds rr_labels!\\n[rr_n] \\$* . pdfdest Link\\n[rr_n] .. .\} '\" '\" Called at the end of the document to generate the pdfmark outline '\" .de pdf_outline .nr rr_levels!\\n+[rr_n] 1 .nr rr_i 0 1 .while \\n+[rr_i]<\\n[rr_n] \{\ . nr rr_ip1 \\n[rr_i]+1 . nr rr_count 0 . if \\n[rr_levels!\\n[rr_ip1]]>\\n[rr_levels!\\n[rr_i]] \{\ . nr rr_j \\n[rr_i] 1 . while \\n+[rr_j]<\\n[rr_n] \{\ . if \\n[rr_levels!\\n[rr_j]]<=\\n[rr_levels!\\n[rr_i]] \{\ . break . \} . if \\n[rr_levels!\\n[rr_j]]==(\\n[rr_levels!\\n[rr_i]]+1) \{\ . nr rr_count \\n[rr_count]+1 . \} . \} . \} . ds hhh \\*[rr_labels!\\n[rr_i]] . pdfbookmark \-\\n[rr_count] Link\\n[rr_i] "\\*[hhh]" .\} .. '\" '\" Some postscript to make pdfmarks harmless on old interpreters... '\" .specialps "def /pdfmark where {pop} {userdict /pdfmark /cleartomark load put} ifelse" '\" '\" Force display of Bookmarks in Acrobat when document is viewed. '\" .pdfmark "[/PageMode /UseOutlines /Page 1 /View [/XYZ null null null] /DOCVIEW" '\" '\" Output the document info in pdfmarks '\" .pdfmark "\ /Title (\*[an-title](\*[an-section])) \ /Subject (\*[an-title] Manual Page) \ /Author (Rick Richardson) \ /Keywords (printing) \ /Creator (groff \n(.x.\n(.y.\n(.Y \-man) \ /CreationDate (\*[an-extra1]) \ /ModDate (\*[an-extra1]) \ /DOCINFO" \} '\" '\" The manual page name is only 1st level mark '\" .nr rr_levels!\n+[rr_n] 1 .ds rr_labels!\n[rr_n] \*[an-title](\*[an-section]) .pdfdest Link\n[rr_n] '\" '\"========================================================================== '\" MANUAL PAGE SOURCE '\"========================================================================== .SH NAME foo2qpdl-wrapper \- Convert Postscript into a QPDL printer stream .SH SYNOPSIS .B foo2qpdl-wrapper .RI [ options "] [" ps-file ] .SH DESCRIPTION .B foo2qpdl-wrapper is a Foomatic compatible printer wrapper for the \fBfoo2qpdl\fP printer driver. This script reads a Postscript \fIps-file\fP or standard input and converts it to Samsung/Xerox QPDL printer format for driving the Samsung CLP-300, CLX-2160, CLX-3160, CLP-315, CLX-3175, CLP-600, CLP-610, CLP-620, CLP-360, CLP-365, and Xerox Phaser 6110 QPDL printers. .P This script can be used in a standalone fashion, but is intended to be called from a printer spooler system which uses the Foomatic printer database. .SH COMMAND LINE OPTIONS .SS Normal Options These are the options used to select the parameters of a print job that are usually controlled on a per job basis. .TP .BI \-c Print in color (else monochrome). .TP .BI \-C\0 colormode Color correction mode [0]. .TS n l . 1 CRD 10 ICM color profile (using \-G *.icm file) .TE .TP .BI \-d\0 duplex Duplex code to send to printer [1]. .TS | n l | n l | n l . 1 off 2 long edge 3 short edge .TE .TP .BI \-m\0 media Media code to send to printer [0]. .TS l l l l n n. _ Media QPDL _ plain 0 thick 1 thin 2 bond 3 color 4 card 5 labels 6 envelope 7 preprinted 8 cotton 9 recycled 10 transparency 11 archive 12 .TE .TP .BI \-p\0 paper Paper size code to send to printer [0]. .TS box; | n l | n l. 0 letter 1 legal 2 A4 3 executive 6 env #10 7 env Monarch 8 env C5 9 env DL 11 B5jis 12 B5iso 16 A5 17 A6 23 env C6 24 folio 25 env 6.75 26 env #9 28 oficio .TE .TP .BI \-n\0 copies Number of copies [1]. .TP .BI \-r\0 xres x yres Set device resolution in pixels/inch [1200x600]. .TP .BI \-s\0 source Source (Input Slot) code to send to printer [255]. .TS | n l | n l. 1 auto 2 manual 3 multi 4 tray1 .TE .TP .BI \-t Draft mode. Every other pixel is white. .TP .BI "\-2 \-3 \-4 \-5 \-6 \-8 \-9 \-10 \-12 \-14 \-15 \-16 \-18" Print in N-up. Requires the \fBpsutils\fP package. .TP .BI \-o\0 orient Orientation used for N-up. .TS l l l. Portrait \-op (normal) Landscape \-ol (rotated 90 degrees anticlockwise) Seascape \-os (rotated 90 degrees clockwise) .TE .SS Printer Tweaking Options These are the options used to customize the operation of \fBfoo2qpdl\fP for a particular printer. .TP .BI \-u\0 xoff x yoff Set the offset of the start of the printable region from the upper left corner, in pixels [varies with paper size]. .TP .BI \-l\0 xoff x yoff Set the offset of the end of the printable region from the lower right corner, in pixels [varies with paper size]. .TP .BI \-L\0 mask Send the logical clipping values from \-u/-l in the QPDL stream. \fBfoo2qpdl-wrapper\fP always runs Ghostscript with the ideal page dimensions, so that the scale of the image is correct, regardless whether or not the printer has unprintable regions. This option is used to move the position of the clipped image back to where it belongs on the page. The default is to send the amount which was clipped by \-u and \-l, and should be good in most cases. .TS l l. 0 don't send any logical clipping amounts 1 only send Y clipping amount 2 only send X clipping amount 3 send both X and Y clipping amounts .TE .TP .BI \-z\0 model Printer model. Model 0 is the default. .TS l l. model Description 0 CLP-300, CLX-2160, CLX-3160 1 CLP-600 2 CLP-310, CLP-315, CLP-610, CLX-3175 3 CLP-620, CLP-360, CLP-365 .TE .SS Color Tweaking Options These are the options used to control the quality of color output. Color correction is currently a WORK IN PROGRESS. .TP .BI \-a\0 parm=val Color Adjust. \fIparm\fP is b, c, s, cr, mg, yb for brightness, contrast, saturation, cyan-red balance, magenta-green balance, and yellow-blue balance. \fIval\fP is 0 to 100. Multiple options are allowed. The default is "\-ab=50 \-ac=50 \-as=50 \-acr=50 \-amg=50 \-ayb=50". This only works when the \-z3 (e.g. CLP\-365) model is set! .TP .BI \-g\0 gsopts Additional options to pass to Ghostscript, such as \-g\(lq-dDITHERPPI=nnn\(rq, etc. This option may appear more than once. .TP .BI \-G\0 profile.icm Convert \fIprofile.icm\fP to a Postscript color rendering dictionary (CRD) using \fBfoo2zjs-icc2ps\fP and adjust the printer colors by using the Postscript \fBsetcolorrendering\fP operator. (WORK IN PROGRESS). .TP .BI \-G\0 gamma-file.ps Prepend \fIgamma-file.ps\fP to the Postscript input to perform color correction using the \fBsetcolortransfer\fP Postscript operator. For example, the file might contain: .br {0.333 exp} {0.333 exp} {0.333 exp} {0.333 exp} setcolortransfer .TP .BI \-I\0 intent Select profile intent from the ICM file. 0=Perceptual, 1=Colorimetric, 2=Saturation, 3=Absolute. Default is 0 (perceptual). .SS Debugging Options These options are used for debugging \fBfoo2qpdl\fP and its wrapper. .TP .BI \-S\0 plane Output just a single color plane from a color print and print it on the black plane. The default is to output all color planes. .TS l l. 1 Cyan 2 Magenta 3 Yellow 4 Black .TE .TP .BI \-D\0 level Set Debug level [0]. .SH EXAMPLES Create a monochrome QPDL stream from a Postscript document, examine it, and then print it using a RAW print queue: .RS .nf foo2qpdl-wrapper testpage.ps > testpage.zm qpdldecode < testpage.zm lpr \-P raw testpage.zm .fi .RE .P Create a color QPDL stream from a Postscript document: .RS .nf foo2qpdl-wrapper \-c testpage.ps > testpage.zc .fi .RE .SH FILES .BR /usr/bin/foo2qpdl-wrapper .SH SEE ALSO .BR foo2qpdl (1), .BR qpdldecode (1) .SH "AUTHOR" Rick Richardson .br http://foo2qpdl.rkkda.com/ '\" '\" '\" .em pdf_outline