■75617 / inTopicNo.4) |
Re[2]: Printerの印刷部数を設定できない |
□投稿者/ ふるふる (8回)-(2015/04/15(Wed) 09:15:40)
|
Azuleanさん、ありがとうございます。 理由がわかって納得できます。
御存知とは思いますが、Adobe Readerのコマンドラインスイッチに印刷部数指定はありません。 次のページを見つけてはいたので、Win32APIで対応はできました。 http://kb2.adobe.com/jp/cps/510/510504.html
ただ、Win32APIを使うのは .Net の流儀じゃないと思うので、.NetからOpenPrinter, GetPrinter, SetPrinter, ClosePrinterに変わる方法があれば知りたいと思います。
解決には以下のスレッドが参考になりました。 http://bbs.wankuma.com/index.cgi?mode=al2&namber=57499&KLOG=96
iTextSharpはPDFファイルを作成するためのもののようですね。 今回は出来上がっているPDFファイルをプリンターで自動印刷するのが目的なので、ちょっと違うようです。
解決はしていますが、.Netでの方法がわかれば教えていただきたく。
ありがとうございました。
■No75616 (Azulean さん) に返信 > ■No75614 (ふるふる さん) に返信 >>Public Sub PrintPDF(ByVal filepath As String, ByVal PrintNumber As Short) >> >> Dim pd As System.Drawing.Printing.PrintDocument = New System.Drawing.Printing.PrintDocument >> pd.DefaultPageSettings.PrinterSettings.Copies = PrintNumber > (略) > > 補足です。 > PrintDocument はあくまで自分で印刷する処理を作るときに効果があるものであり、外部プロセスに対して何も影響しません。 > > >>部数の変更方法、あるいはAcrobat Readerで複数部数を印刷する方法はありますか? > > Acrobat Reader を外部プロセスとして使う限り、コマンドラインスイッチか、ウィンドウを無理矢理外部から操作する(マウス操作のエミュレートなど)ぐらいしか方法はありません。 > それらの方法は安定的ではないと思うので、自分で PDF を開いて印刷するソリューションを探すか、Adobe が提供する製品組み込みソリューションを探すかでしょうか。
|
解決済み
|