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

PDFファイルを数十個開いた状態で
「名前を付けて保存」⇒「閉じる」⇒「名前を付けて保存」⇒「閉じる」
という動作を開いたファイル分実行する必要があります。
※「名前を付けて保存」で上書きするとファイルサイズが小さくなる為このような作業を行う必要があります。

この「名前を付けて保存」⇒「閉じる」を自動で、もしくは簡単に行う方法は無いでしょうか。
ファイル数が多く、サイズの大きなファイルだと保存時間も長い為、有る程度自動化したいと考えております。

アクロバットは「ACROBAT8 PROFESSIONAL」を使用しています。

●質問者: and_sin
●カテゴリ:コンピュータ
✍キーワード:アクロバット サイズ ファイル 名前 自動
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● shotaro_tsuji
●20ポイント

http://www.adobe.com/devnet/acrobat/javascript.html

JavaScriptを習得しているならスクリプトで処理出来ます。リファレンス(PDF,英語)のリンクを書いておきます。

◎質問者からの返答

残念ながらJavaScriptは習得できてません。

具体的にどのように記述すると良いか教えて頂けると幸いです。


2 ● tobeoscontinue
●20ポイント

Acrobatの自動処理機能で文書を瞬時に整理整頓で有る程度自動化できるかもしれません。

新規シーケンスでやりたい事、「名前を付けて保存」,「閉じる」を登録します。

後は登録したシーケンスを選ぶと順次処理されます。

ただ通常のやりかたでは自動処理を選んでから、その対象となるファイルを幾つか選択して、いっきに処理するという使い方なのですが、

注意:Acrobatで開いているファイルに対してバッチ処理を行うように設定することもできますが、

とあるので何かやりかたがあるものと思います。

現在、Acrobatを持っていないので確認できないのですが。

◎質問者からの返答

バッチ処理の新規シーケンスには「名前を付けて保存」,「閉じる」という設定が無いようです。

JavaScriptを利用すれば解決できるのかもしれませんが、JavaScripを利用したバッチ処理をこれまで使用したことがなく、設定方法がまったく分かりません。

シーケンス編集画面の、JavaScript編集画面に下記コマンドを入力したのですが残念ながら動きませんでした。(実行しても何もおきない)

app.execMenuItem("SaveAS")

app.execMenuItem("close")

JavaScriptの記載方法に誤りがあるのかもしれませんが、どこがおかしいのか分からずにいます。


3 ● tobeoscontinue
●20ポイント

二度目の回答ですいません。

http://www.openspc2.org/reibun/Acrobat8/javascript/etc/002/index...

保存するだけなのでシーケンスを選ぶ必要がなかったようです。


新規シーケンスを選びます

バッチシーケンスの編集の3.出力場所の選択や出力オプションを設定します。


ただこのやり方では作成したシーケンスを選んでからバッチ処理をするファイルを指定する

というやりかたなので開いた状態のファイルでは機能しないかもしれません。

2.コマンドを実行する対象:のメニューや選択...の辺りに何かオプションがあるかもしれません。

◎質問者からの返答

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

確かにフォルダやファイルを指定してであれば、可能だと思います。

ただ、今回は「開いた状態のファイル」で名前を付けて保存が出来る必要があります。

理由は、大量のフォルダ内にあるPDFファイルのサイズを小さくする必要があり、Windowsのファイル検索でPDFの一覧を表示させ、その一覧から数十個単位でファイルを開き名前を付けて保存で上書きをしたいと考えているからです。

JavaScriptの記述で解決できるのが良いのですが。。

もしくはWindowsの動作を記録するソフトUWSCのようなソフトでの対応も考えたのですが、ファイルサイズが大きなPDFと小さいPDFとでは保存時間が大きく異なる為、単純に動作を記録するだけでは難しいようだと考えています。

引き続き何か良い案がございましたらご教授ください。


4 ● shotaro_tsuji
●20ポイント

http://www.adobe.com/devnet/acrobat/javascript.html

ソースを書きますと以下のようになりますが手元にはIllustrator CS2しかない為、Acrobatでは確認できていません。

このソースの動作についてはリファレンス内のJavaScript APIのappとDocの説明を参考にしてください。

(動作確認の時には壊れても良いファイルを使ってください。)

var docs = app.activeDocs;

for( i = 0 ; i < docs.length ; i++ )
{
 docs[i].saveAs({
 cPath: docs[i].documentFileName,
 bPromptToOverwrite: false});
 docs[i].closeDoc();
}

5 ● airplant
●20ポイント

#3でand_sinさん自身が書かれていますが、UWSCで時間を指定して最大時間をタイマー(SLEEP)で待つか、特定ウインドウが開くまで待つようにすれば、簡単に自動化できるものと思われます。

Acrobatで保存が終わったときに何かウインドウが出れば、それがトリガになるのですが・・・

JavaScriptでの記載を見たのですが、名前は個別に指定する必要があるようです。そのためには、そのファイルがどのフォルダの何かというのを知る必要があるので、ある程度JavaScriptを理解して組む必要があります。

参考→

http://q.hatena.ne.jp/1224655899#a865379

関連質問


●質問をもっと探す●



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