2011-08-01 276 views
3

谷歌/冰didnt帶來的任何解決方案,我下面的問題,希望有人能幫助我:與改變默認的打印機設置打印PDF文件

我們已經在我們基於C#的程序打印各種PDF文件。在我們可以打印之前,我們必須配置打印機,例如將方向設置爲橫向。

我試着改變默認的打印機設置,例如像這樣:

​​

我們通過PDFSharp發送PDF到打印機,這基本上可行,但我的設置完全被忽略。是不是可以通過這種方式更改默認的打印機設置?我們有沒有機會改變設置並打印我們的PDF文件?

非常感謝您提前!

+2

請看這裏:[pdfSharp打印頁面大小](http://stackoverflow.com/q/6277554)看起來你必須改變PDF文件的自我。 –

+0

也許可以提供更多幫助,如果您可以發佈您使用的代碼來調用PDFSharp – razlebe

+0

謝謝喬治!我們可以直接在PDF中設置「雙面」,「頁面大小」和「方向」等設置嗎? – lakai

回答

1

回答我的問題...

經過試驗和錯誤我不認爲有任何機會在事後通過配置.NET和打印PDF文件,打印機3天。您不能使用System.Drawing.Printing.PrintDocument類與PDF組合,但使用PrintDocument似乎是更改打印機設置的先決條件。

我的解決方案來配置打印機在CodePlex上靈感來自這篇文章:http://www.codeproject.com/KB/dotnet/NET_Printer_Library.aspx

到最後打印我通過命令行參數到Adobe Reader發送PDF文件。

+1

嗨你可以請張貼傳遞命令行參數組合的代碼,然後使用這個http://www.codeproject.com/KB/dotnet/NET_Printer_Library.aspx來設置打印機設置,因爲我不能將這兩個組合在一起THanks – Jatin

+0

你可以發佈你使用的代碼嗎?代碼項目代碼不是很好。 – jle

1

不,我不認爲這是行得通的。

您正在創建本地PrinterSettings對象,該對象可用於配置PrintDocument,該對象又可以使用PrintDocument.Print()發送到打印機。

如果您打電話給PDFSharp編排打印,它將使用默認打印機設置,除非您以某種方式通過API將PrinterSettings傳遞給PDFSharp?

如果您可以發佈您用來調用PDFSharp的代碼,它將有助於確定如何執行此操作。

+0

感謝您的評論!我在這個問題中調用PDFSharp:http://stackoverflow.com/questions/6277554/pdfsharp-printing-with-page-size 我們可以使用PrintDocument來打印我們的PDF文件,還是我們必須使用Acrobat Reader/GhostScript ,...? – lakai