mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-11-02 22:41:47 -06:00
The print script mapped "Flip on long edge" to System.Drawing's Duplex.Horizontal and "short edge" to Vertical. Those are DEVMODE's DMDUP_HORIZONTAL (short-edge binding) and DMDUP_VERTICAL (long-edge binding), so every Windows two-sided job bound on the other edge: a PCL driver received @PJL SET BINDING = TOP for long edge. They are swapped back. Win32_Printer's Capabilities say whether a driver prints two-sided (3, Duplex Printing). The printer list already comes from Win32_Printer, so it now carries that as Printer::two_sided (None on CUPS), the printers tool reports it, and the Print dialog notes when the selected printer's driver doesn't take two-sided settings and points to Properties…. Such drivers keep their own setting even with Two-sided Off. No vendor-specific names are used. Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Co-authored-by: Brandon Thomas <echelon@gmail.com>