PPDs with A4 instead of Letter

Jurjen Bokma

November 2012

Living in Europe, where A4 is common, I'm fed up with having our printers come with default Letter for all trays. Because of it, all my customers have to change the default printer settings, and this generates a lot of help desk calls. So here 's the way to make PPDs suitable for the European market:

sed -i.Letter 's/^\*DefaultPageSize:\ Letter$/*DefaultPageSize: A4/g ; s/^\*DefaultImageableArea:\ Letter$/*DefaultImageableArea: A4$/g ; s/^\*DefaultPaperDimension:\ Letter$/*DefaultImageableArea: A4$/g ; s/^\*DefaultPageRegion:\ Letter$/*DefaultImageableArea: A4$/g' PRN104208.ppd

And for good measure, here's a couple of other things you might want to do:

  1. sed -i.nolargecapacitytray 's/^\*DefaultLargeCapacityTray:\ NotInstalled$/*DefaultLargeCapacityTray: Installed/g ; s/^\*DefaultOptionTray:\ NotInstalled$/*DefaultOptionTray: 2Cassette/g'PRN104208.ppd

  2. sed -i.noduplex 's/^\*DefaultDuplex:\ None$/*DefaultDuplex: DuplexNoTumble/g' PRN104208.ppd

The trick to figuring this out is making a copy of /etc/cups/ppd/printer.ppd, adjusting the settings through CUPS (e.g.via http://localhost:631), and seeing what has changed in the PPD. CUPS does actually alter the PPD. If editing PPDs doesn't cut it, you can try ppdc, the PPD Compiler.