Replies: 1 comment
-
This is absolutely no problem. You can call the filter functions from any program, you can also use the special filter functions for calling filter functions in a chain, for feeding data into them, ... and especially you can send a get-printer-attributes IPP request to a CUPS queue and supply the resulting printer IPP attributes structure to the fiter function(s), for example to You can even use the filter functions on tasks which do not have to do with printing, like for example for scanning. |
Beta Was this translation helpful? Give feedback.
-
With the impending "big" changes in CUPS 3.0, I have been researching alternatives for the universal "pre-filtering" of print jobs CUPS 2.x currently does and wanted to know if its possible to use this library in other printing related applications.
Some background:
Since 2020, I have been modernizing the CUPS interface to netatalk's papd daemon. So far the code has been updated to use the CUPS destination API and is mostly ready for the transition to libcups3. The only big remaining issue remaining is how to deal with the Postscript output classic Macintosh platforms generate from their printer drivers.
With CUPS 2.x, papd is simply passing on the spooled Postscript files to CUPS and cups-filters seamlessly converts the files to whatever output the printer needs (Apple Raster, PDF, PCL, etc.) With CUPS 3.0, it appears that the only supported input formats are going to be plain text, PDF, and the various driverless printer raster formats. The use-case I was looking at is possibly having papd call libcupsfilters, specifically the cfGhostscript() function to convert the Postscript job to PDF and then submitting the output to CUPS thereafter.
It's an edge case not currently covered by the documentation. I don't see why it wouldn't be possible, but its nice to ask before implementing a possible solution to the problem. Also, are distros expected to carry a libcupsfilters package once they switched to CUPS 3.0? Will libcupsfilters be a dependency for snap based printer applications?
Beta Was this translation helpful? Give feedback.
All reactions