PDFファイルの出力フォルダを変更したり、保存ダイアログを表示しないようにしたいです。
参考になるコード、本、Webページを教えてください。
こちらをどうぞ。
http://www.codeproject.com/useritems/Easy_PDF_Programming.asp
ごく概略的には、
・GetDefaultPrinterName() で、現在のデフォルトプリンタ名を取得した上で、プリンタ名を退避しておく
・SetDefaultPrinterName() で、デフォルトプリンタ名を Adobe PDF プリンタにセットする
・PrintDocument などを用い、ドキュメントをプリントする
・退避しておいた元のデフォルトプリンタ名を用い、SetDefaultPrinterName() で元の状態に戻す
といったところになります。
前の質問の回答が的外れだった(申し訳ございませんでした)ので,ここのコメントで補足です
(とは言っても,私もあまり良くわかっていないながらなのですが).
行いたいことは結局,Adobe Acrobat SDKを使って
(IACにより)Adobe AcrobatのCOM(OLE)オブジェクトと通信したいということみたいですね.
基本的には下のオフィシャルサイトにある文書「InterApplication Communication」を読めばよさそうなのですが,かなり重い内容ですね.
http://www.adobe.com/devnet/acrobat/
http://support.adobe.com/devsup/devsup.nsf/docs/53588.htm
他ざっと調べたものを挙げておきます(扱っているサイトはまだとても少ない!)
この雑誌には割と詳しく書かれていそう:
http://www.pdfjournal.com/pdfjj/backnumbers/pdfjjsamplevol1.html
類似質問(VBでPDFファイルを編集する -OKWave):
http://okwave.jp/qa194124.html
PlanetPDFの情報:
http://www.planetpdf.com/search_results.asp?words=IAC&SearchString=storepdftoolsforumgeneral
C#からCOMオブジェクトを呼び出すだけなので,処理はVBと同じになるはずです.
このブログ(AcrobnatのOLE機能(IAC)、又はPDFについて調査。)が良さそう:
http://pdf-file.jugem.jp/
日本語訳にもなっている「PDF Hacks」も参考になる:
http://safari.oreilly.com/0596006551/pdfhks-CHP-7-SECT-7
http://support.adobe.co.jp/faq/faq/qadoc.sv?221435+002
http://blog.antenna.co.jp/PDFTool/archives/2005/11/pdf6.html
によると,PDFWriterはversion 5.0までの機能だったみたいですね.
http://help.adobe.com/ja_JP/Acrobat/8.0/Standard/help.html?content=WS58a04a822e3e50102bd615109794195ff-7f2f.html
には,
> 元の文書は PostScript に変換され、それが自動的に Distiller に渡されて PDF に変換されます。
> Distiller を手動で起動する必要はありません。
> Distiller の現在の設定および PDF 設定がファイルの変換に使用されます。
> 標準的でないページサイズを使用する場合は、カスタムページサイズを作成します。
とあるので,PDFプリンタは,
「画像を.psに変換⇒.psをDistllerで.pdfに変換」を自動化しているみたいですね.
なので,たぶん,PDFプリンタを起動する前に,DistillerのパラメタをOLEで設定してやれば良さそうなのですが….
Acrobat Distiller Parameters:
http://partners.adobe.com/public/developer/en/acrobat/sdk/pdf/pdf_creation_apis_and_specs/DistillerParameters.pdf
がパラメタの設定で参考になりそうです.
PDFプリンタを使わないという手もあるかもしれません.
PDFプリンタが行うことを自動じゃなくて手動でやればいいだけので,
psプリンタドライバで印刷してpsファイルを生成し,Distillerで変換とすればよい気がしてきました.
PS プリンタドライバのインストールと活用方法
http://www.klavis.info/psprn.html
次回があればぜひ、Acrobat SDKを使ってみたいと思います:)。