I'be been trying to send a PDF file to my printer to print using GhostscriptProcessor in C#. Everything is going well and the file is being printed but a slight zoom (around 1.1x - 1.05x) is being applied and I can't find a way to specify Top Margins or change the final size of the rendered PDF.
It seems like the page size from the printer are different from the ones I'm rendering. Is there any way to circumvent that?
This is what I have:
string printerName = "MIAUMIAUMIAU";
using (GhostscriptProcessor processor = new GhostscriptProcessor())
{
List<string> switches = new List<string>();
switches.Add("-empty");
switches.Add("-dPrinted");
switches.Add("-dBATCH");
switches.Add("-dNOPAUSE");
switches.Add("-dNOSAFER");
switches.Add("-dDuplex");
switches.Add("-dTumble=0");
switches.Add("-dNumCopies=1");
switches.Add("-sDEVICE=mswinpr2");
switches.Add("-sOutputFile=%printer%" + printerName);
switches.Add("-f");
switches.Add(inputFile);
processor.StartProcessing(switches.ToArray(), null);
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…