Date: Sat, 12 Apr 2003 15:19:45 +0930 From: Malcolm Kay <Malcolm.Kay@internode.on.net> To: "Gar/usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=uniprint > -sOutputFile=- - && exit 0y Schenk" <gwschenk@socal.rr.com>, freebsd-questions@freebsd.org Subject: Re: Newbie lpd printing Message-ID: <200304121519.45544.Malcolm.Kay@internode.on.net> In-Reply-To: <200304102145.25225.gwschenk@socal.rr.com> References: <200304102145.25225.gwschenk@socal.rr.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 11 Apr 2003 14:15, Gary Schenk wrote: > This FreeBSD newbie has even learned how to print! I'm using lpd to print > and it works fine from the console. I'm using an old Epson with the hpif > filter from the FreeBSD handbook, using uniprint as the device. > > However, it does not work in KDE. I've read the KDE printing handbook, but > have not found much there. > > It seems to be an input filter problem. My /etc/printcap file calls on > hpif, which does print text files to the Epson just fine, yet the results > I get in KDE seem to indicate that the input filter is not working. Does > KDE use /etc/printcap? Have I missed something in setting up printing for > KDE? Basically all I've done is click "print" in the application, choose > lpd, and ok. > > I'm not good at scripts yet, so maybe that is the problem? Here is my input > filter file: > > #!/bin/sh > > # Treat LF as CR+LF > > printf "\033&k2g" || exit 2 > > # Now read first two characters of the file to determine if PostScript or > not # and apply the appropiate massaging > > IFS="" read -r first_line > first_two_chars=`expr "$first_line" : '\(..\)'` > > if [ "$first_two_chars" = "%!" ]; then > > exec 3>&1 1>&2 > /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=uniprint \ > -sOutputFile=/dev/fd/3 - && exit 0 > > # > /usr/local/bin/gs -dSAFER -dNOPAUSE -q -sDEVICE=uniprint \ > -sOutputFile=- - && exit 0 > > else > echo "$first_line" && cat && printf "\033&10H" && > exit 0 > fi > > exit 2 > The parameters given to gs here are quite insufficient; ghostscript needs a number of parameters specific to the particular printer model to be processed through the uniprint device. The norm is to supply these in a file (*.upp) selected from the ghostscript library (/usr/local/share/ghostscript/x.xx/lib) to match your particular printer model. This is referenced as say: /usr/local/bin/gs @stc.upp -q -sOutputFile=- - && exit 0 where stc.upp is the lbrary file matching your printer. -dSAFER; -dNOPAUSE and -sDEVICE=uniprint are normally setup in the *.upp file. An alternative, which I use for an Epson C80 with gnu ghostscript, is the stp device. Have a look at /usr/local/share/ghostscript/x.xx/gimp-print/README. (I don't think stp is directly available in the Aladdin ghostscript distribution) Malcolm Kay
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304121519.45544.Malcolm.Kay>
