http://www.perlmonks.org?node_id=995841


in reply to PDFtoHTML Mod

I use Win32::Printer everyday on network printers. The trick is to have the printer name exactly match the name of the printer queue.

Here is sample code to print to the PDF file or the printer

if ($PrintAsPDF==0) { our $dc = new Win32::Printer( width => $PageWidth, height => $PageHeight, description => 'Sample Description', printer => $PrinterName, orientation => $PageOrientation, unit => $Units); } else { our $dc = new Win32::Printer( width => $PageWidth, height => $PageHeight, description => 'Sample Description', printer => $PrinterName, file => $PDFFileName.'.pdf', pdf => 1, unit => $Units); }

I usually use the rename function on the printers queue to highlight the printer name and copy it into my application configuration YAML.

Don't forget to to install Ghostscript or you can't print a PDf file.

From the Win32::Printer POD

"Set this attribute if You want to convert PostScript printer drivers output to PDF format. WARNING: This feature needs installed Ghostscript and atleast one PostScript printer driver. Use this attribute with "file" or "prompt" attributes."