人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Adobe PDFプリンタ(Acrobatをインストールすると作成されるプリンタ)をC#アプリケーションから一時的に制御する方法はないでしょうか?
PDFファイルの出力フォルダを変更したり、保存ダイアログを表示しないようにしたいです。
参考になるコード、本、Webページを教えてください。


●質問者: maq
●カテゴリ:コンピュータ
✍キーワード:Acrobat Adobe C# PDF PDFファイル
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● ManalTencho
●10ポイント

こちらをどうぞ。

http://www.codeproject.com/useritems/Easy_PDF_Programming.asp

ごく概略的には、

・GetDefaultPrinterName() で、現在のデフォルトプリンタ名を取得した上で、プリンタ名を退避しておく

・SetDefaultPrinterName() で、デフォルトプリンタ名を Adobe PDF プリンタにセットする

・PrintDocument などを用い、ドキュメントをプリントする

・退避しておいた元のデフォルトプリンタ名を用い、SetDefaultPrinterName() で元の状態に戻す

といったところになります。

◎質問者からの返答

意図が違います。

Adobe PDFプリンタの設定状態を変えてやりたいのです。

残念ながらプリンタ切替の質問ではありません。


2 ● wasisan
●60ポイント

今度はコメントだと読みづらくなるので,申し訳ないのですが正当な回答とさせて頂きます.

まず,コメントの回答もまた的外れでした(この質問を読んでいなかったので).

行いたいことは,PDFファイルの操作(Acrobatオブジェクトとの通信)ではなく,Acrobatを用いたPDFファイルの生成なので,

の2つのどちらかを選ぶということになります.


となります.こちらは操作の自由度が高いので割合単純だと思います.

Acrobat Distiller API Reference:

http://partners.adobe.com/public/developer/en/acrobat/sdk/pdf/pd...

を読めばOK.

これによると,Distillerをシェルで起動するか,または,オートメーション

(OLE)で操作するということです.p.21辺りからOLEインタフェースの説明がある.


http://support.adobe.com/devsup/devsup.nsf/docs/50876.htm

として,印刷ドライバ扱いするので非常に制御しづらいと思います.

設定ファイルやレジストリで制御できるのかもしれません.

下の情報は古いものなので今でも通用するかどうか分かりませんが.

PDFml-J:01307] PDFWriter のファイル名入力ダイアログ非表示について

http://hpcgi1.nifty.com/MADIA/VBBBS/wwwlng.cgi?print+200312/0312...

◎質問者からの返答

コメントの内容的外れではありません。

もともとの意図はその通りで、とりあえずの実装上で質問内容が変化してきたという経緯です。

やはり、回答の通りなのでしょうね?Distillerを使うためにはpsファイルを作る方法が問題。PDFWriterは面倒。

なので、Adobe PDFプリンタで何とかと思っているわけですが…。

とにかく回答ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ