libppd 2.0b1 #1
tillkamppeter
started this conversation in
General
Replies: 1 comment
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
First beta release approaching libppd 2.0.0, for retro-fitting classic CUPS drivers/PPD files on systems using the New Architecture for printing and scanning.
ppdLoadAttributes()
,ppdFilterLoadPPD()
,ppdFilterLoadPPDFile()
,ppdFilterFreePPD()
, andppdFilterFreePPDFile()
to convert all PPD file options and settings relevant for the filter functions in libcupsfilters into printer IPP attributes and options. Also create a named ("libppd") extension in the filter data structure, for filter functions explicitly supporting PPD files.ppdFilterCUPSWrapper()
convenience function to easily create a classic CUPS filter from a filter function....tops
CUPS filters into the filter functionsppdFilterPDFToPS()
, andppdFilterRasterToPS()
. As PostScript as print output format is as deprecated as PPD files and all PostScript printers use PPD files, we move PostScript output generation to libppd, too.pstops
filter into theppdFilterPSToPS()
filter function.ppdFilterImageToPS()
filter function for Printer Applications to print on PostScript printers. It is used to print images (IPP standard requires at least JPEG to be accepted) without need of a PDF renderer (cfFilterImageToPDF()
->cfFilterPDFToPS()
) and without need to convert to Raster (cfFilterImageToRaster()
->cfFilterRasterToPS()
).ppdFilterImageToPDF()
andppdFilterPDFToPDF()
filter functions with the underlyingppdFilterEmitJCL()
function.ppdFilterUniversal()
wrapper function forcfFilterUniversal()
to add PPD file support, especially for PPD files which define driver filters.ppdFilterExternalCUPS()
wrapper function forcfFilterExternal()
to add PPD file support.ppdCacheAssignPresets()
function (Only if not filled via "APPrinterPreset
" in the PPD). This way we can use the IPP optionsprint-color-mode
,print-quality
, andprint-content-optimize
in a PPD/CUPS-driver-retro-fitting Printer Application with most PPDs.ppdCacheCreateWithPPD()
also support presets forprint-content-optimize
, not only forprint-color-mode
andprint-quality
.ppdCacheGetPageSize()
function do not only check the fit of the margins with the page size matching the job's page size (like "A4") but also the margins of the variants (like "A4.Borderless"), even if the variant's size dimensions differ from the base size (and the physical paper size), for example for overspray in borderless printing mode (HPLIP does this). Also select a borderless variant only if the job requests borderless (all margins zero).ppdPwgUnppdizeName()
,ppdPwgPpdizeName()
, andppdPwgPpdizeResolution()
into the public API.ppdPwgUnppdizeName()
allow to supply NULL as the list of characters to replace by dashes. Then all non-alpha-numeric characters get replaced, to result in IPP-conforming keyword strings.ppdPwgUnppdizeName()
function support negative numbersppdFilterPSToPS()
: Introduced newinput-page-ranges
attribute (Issue #365, Pull request #444, #445).ColorModel
option in the PPDs from the PPD generator to mirror theprint-color-mode
IPP attribute instead of providing all color space/depth combos for manual selection. Color space and depth are now auto-selected by theurf-supported
andpwg-raster-document-type-supported
printer IPP attributes and the settings ofprint-color-mode
andprint-quality
. This is now implemented in thecfFilterGhostscript()
filter function both for use of the auto-generated PPD file for driverless iPP printers and use without PPD, based on IPP attributes. For this the new library functionscupsRasterPrepareHeader()
to create a header for Raster output andcupsRasterSetColorSpace()
to auto-select color space and depth were created.cfFilterImageToPS()
as CUPS does not support this (Issue #347, Pull request #361, OpenPrinting CUPS issue #115).ppdCreateFromIPPCUPS()
, we have a better one in libppd. Also removed corresponding test intestppd
.ARDuplex
PPD option name for double-sided printing..gitignore
that are generated byautogen.sh
,configure
, andmake
(Pull request #336).Beta Was this translation helpful? Give feedback.
All reactions