プロが教える店舗&オフィスのセキュリティ対策術

Adobe InDesignにて、Fireworksのスライス機能みたいな事はできないのでしょうか。

Adobe InDesignにて印刷用の入稿データを作成した場合に、写真画像はepsデータをトリミングしたものを配置してレイアウトしています。
その後、そのトリミングされている画像をJpeg画像等で使い回したい場合に、一発でトリミングしてJpegに変換するような機能や方法、ソフト等はないのでしょうか。

レイアウト上でトリミングされている情報があるのに、手作業で元画像をトリミングし直し、Jpegに変換するには非常に手間がかかってしまいます。
Adobe Fireworksの機能のスライスの様な事ができれば、トリミングされた後の画像を出力できるのにと思うのですがその方法が見つからず困っております。
どうぞよろしくお願いします。

A 回答 (4件)

グループ化された画像フレームがあった場合、おっしゃる通りエラーがでますね・・・。

失礼しました。




それでは、5行目を

pname = app.activeDocument.selection[0].graphics[0].itemLink.name;

7行目を

var myFile = new File(mypath + "/"+ pname.substr(0,pname.lastIndexOf(".")) + ".jpg");


にしてみてください。元ファイル名+jpgで保存されます。
    • good
    • 0
この回答へのお礼

ご回答頂きましてありがとうございます。
グループ化された画像フレームがあった場合にエラーとなってしまうんですね。
原因は不明でしたが、他のスクリプトを参考にしてitemLinkが抜けている事までは突き止めたのですが・・・

元ファイル名までちゃんと出力対応して頂いてありがとうございます。
これでやりたいことができました。どうもありがとうございます。
また今回のスクリプトを参考にさせて頂き大いに勉強になりました。
時間をかけてしまいましたが最後までおつきあい頂きましてありがとうございました。


※最後に修正点を反映させた動作しているスクリプトを記載しておきます。

imgs = app.activeDocument.allGraphics;
for (i = 0; i < imgs.length; i++)
{
app.selection = imgs[i].parent;
pname = app.activeDocument.selection[0].graphics[0].itemLink.name;;
mypath = app.activeDocument.filePath;
var myFile = new File(mypath + "/"+ pname.substr(0,pname.lastIndexOf(".")) + ".jpg");
app.jpegExportPreferences.jpegQuality = JPEGOptionsQuality.maximum;
app.jpegExportPreferences.resolution = 350;
app.selection[0].exportFile("JPEG", myFile, false);
}

お礼日時:2010/07/14 23:27

では、全画像を一括でjpeg書き出しするスクリプト書いてみたので試してみてください。


テキストエディタ等にコピーして拡張子を ○○.jsx で保存し、スクリプト登録して、書類を開いた状態で実行してください。書類が置いてあるフォルダにページ番号+連番で保存されます。


//ここから


imgs = app.activeDocument.allGraphics;
for (i = 0; i < imgs.length; i++)
{
app.selection = imgs[i].parent;
pname = app.activeDocument.selection[0].parent.name;
mypath = app.activeDocument.filePath;
var myFile = new File(mypath + "/"+ pname + "P" + "_" + i +".jpg");
app.jpegExportPreferences.jpegQuality = JPEGOptionsQuality.maximum;
app.jpegExportPreferences.resolution = 350;
app.selection[0].exportFile("JPEG", myFile, false);
}

//ここまで
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
作成頂いたスクリプトが当初動かずエラーが発生してしまい、原因の追及に苦労しましたが
なんとか無事に動かすことができました。

pname = app.activeDocument.selection[0].parent.name;
のnameプロパティがデータによってはうまく取得できるものとエラーとなってしまうものがあり、何故エラーとなってしまうのかは、未だに不明なのですが、
pname = app.activeDocument.selection[0].parent;
とすることで回避することができましたので、あわせてご報告させて頂きます。
スクリプトはほぼ初心者でしたのでご連絡に時間がかかってしまいご報告がおくれまして申し訳ありませんでした。

実行してみた後に気付いた事ですが、出力ファイル名が元ファイル名を引っ張ってくることが出来れば出力された画像の確認が随分と楽だと気付いたので、どうにかして出来ないか試行錯誤してみたのですが、私のスキルではちょっとできずに時間だけを費やしてしまいました。
しかしなんとか今回やりたいことは乗り切りましたので、今後汎用的に利用できるよう元ファイル名を引っ張ってきて出力出来るようにするために、もう少し学習を進めてみます。

的確なご回答を頂きましてありがとうございました。
今回のスクリプトを参考にさせていただきまして、次に繋げたいと思います。
どうもありがとうございました。

お礼日時:2010/07/13 23:02

お使いのInDesignのバージョンがわからないので、とりあえずCS4の場合ですが、



目標の画像を選択した状態で、ファイル→書き出し で、ファイルの種類をJPEGにして保存。書き出しのオプションが出るので「選択部分」にして書き出し。

で、トリミングされた状態のJPEGになります。


あと、ファイル→Dreamweaver 用に書き出し で、「画像をコピー」を最適化にして書き出すと、書類に使われている画像がすべてトリミングされた状態でサブフォルダに書き出されます。
ただし、この方法だと解像度が指定できません。
    • good
    • 0
この回答へのお礼

ありがとうございました。バージョンを書き忘れていました。
InDesign CS3にてご教示いただいた方法でやってみましたところ、ファイル→書き出しにてトリミングされた状態のJPEG画像を出力することができました。ありがとうございました。

また、ファイル→Dreamweaver 用に書き出しも試してみましたが、こちらはWeb用に書き出されるようで、解像度が72固定となってしまいちょっと使えないものになりました。非常に惜しいですね。

とりあえず、ファイル→書き出しにて解像度を印刷用に350に指定すれば出力することができる事が
わかりました。ありがとうございます。

あとは、前ページ100P近くに何枚もある画像を全て自動で書き出す事ができればいいのですが・・・
それは難しそうですね。手作業だと果てしない労力になるので何か良い方法があればいいのですが。
ファイル→書き出しにて解像度が指定できれば良いのに・・・と思ってしまいました。

お礼日時:2010/06/23 22:09

ポジションツールで切り抜く

    • good
    • 0
この回答へのお礼

ありがとうございました。
ちょっとそれだと手間がかかりすぎてしまいますね。
出来れば殆ど自動で100ページ近くの入稿データの画像のみを出力できればいいのですが・・・
やはり難しいのかしら。
余所様はその様な事を求められる事は普通ないんでしょうね・・・きっと。
そもそもこの要件自体が普通じゃないのかもしれませんね。

お礼日時:2010/06/23 22:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!