Foomatic 3.0 and KDE Print
Till Kamppeter
kde-print@mail.kde.org
Tue, 14 Jan 2003 16:38:29 +0100
Oi,
Somewhat earlier (Nov. 30, 2002) I posted about the new Foomatic 3.0 and
KDE Print. Are there already done any changes on KDE Print towards
Foomatic 3.0?
Main changes needed for all Foomatic-supporting printing systems (CUPS,
LPD/LPRng, perhaps a new "Foomatic" system):
Numerical options
-----------------
Numerical options look as follows in the new PPD file format:
-------------------------------------------------------------------------
*OpenUI *GammaSaturation/Gamma correction on saturation HSV component:
PickOne
*FoomaticRIPOption GammaSaturation: float CmdLine C
*FoomaticRIPOptionPrototype GammaSaturation: " -satgamma %s"
*FoomaticRIPOptionRange GammaSaturation: 0.10 10.0
*OrderDependency: 250 AnySetup *GammaSaturation
*DefaultGammaSaturation: 1.0
*GammaSaturation 0.1/0.1: "%% FoomaticRIPOptionSetting: GammaSaturation=0.1"
*GammaSaturation 0.2/0.2: "%% FoomaticRIPOptionSetting: GammaSaturation=0.2"
*GammaSaturation 0.3/0.3: "%% FoomaticRIPOptionSetting: GammaSaturation=0.3"
...
*GammaSaturation 9.8/9.8: "%% FoomaticRIPOptionSetting: GammaSaturation=9.8"
*GammaSaturation 9.9/9.9: "%% FoomaticRIPOptionSetting: GammaSaturation=9.9"
*GammaSaturation 10.0/10.0: "%% FoomaticRIPOptionSetting:
GammaSaturation=10.0"
*CloseUI: *GammaSaturation
-------------------------------------------------------------------------
So they are easy to recognize by the presence of the
"*FoomaticRIPOptionRange" keyword. The "*FoomaticRIPOption" keyword
tells whether they are integer or floating point. The
"*FoomaticRIPOptionRange" keyword tells what the minimum and maximum
values are. So one can make KDE Print easily show them as real numerical
options with slider, as it works now with Foomatic 2.0.x. The "*%
COMDATA" parsing should not be dropped, though, as many users will
probably still have queues with old PPD files.
"PrintoutMode" option
---------------------
It is planned to add a "PrintoutMode" option to all drivers which allow
setting the printing mode (quality, resolution, bw/color, ...). This
option will have the same choices (the applicable ones from "Draft",
"Draft Gray", "Normal", "Normal Gray", "High", "High Gray", "Very High",
"Very High Gray", "Photo", "Photo Gray") for every driver. This option
can set various of the native driver options (as resolution, dithering,
quality, color mode, ...). This way it will be possible to easily select
the correct printing mode, especially for newbies. The individual
options which are controlled by the "PrintoutMode" option are still
accessable, they are in a separate option group named "PrintoutMode".
For the use of this option being as easy as possible, I suggest to check
the PPD file for a "PrintoutMode" option and if yes, to put it onto the
first tab of the "Properties" dialog and/or even into "kprinter"s main
window. Then users will directly see it and be able to get their printer
easily into the mode needed for the current job.
Imageable area
--------------
Foomatic 2.9.x supports unprintable borders and stores information about
them in the PPD files, in the "ImageableArea" lines. KDE Print should
take care of correctly using this information (see earlyier discussion
on this list).
Manufacturer-supplied PostScript PPD files
------------------------------------------
Foomatic 2.9.x has full support for manufacturer-supplied PostScript PPD
files. So these PPDs can be used also with LPD/LPRng when one sets up
the print queues with Foomatic. In addition, one can switch between
Foomatic PPDs and manufacturer PPDs without loosing the option settings
(of options which are equally named in both PPDs). Also on systems where
the Foomatic PPDs are pre-compiled full use of Foomatic can be made.
The presence of Foomatic 2.9.x should be checked to determine whether
the additional features have to be enabled. The check should be done at
run-time, so that users who update to the new Foomatic (or at least
install the foomatic-rip filter) later on will also have the new
features available.
Till