2013/05/08: レイヤーごとにPDF書き出しするJavascript(2)
4年前のスクリプトレイヤーごとにPDF書き出しするJavascript 。これがなんと、いまだに現役で結構多くの人に使われているようなので、今更感は半端ありませんが、ちょっとアップデートしました。
PDFプリセットへの対応は、時間がなくて間に合いませんでした。すみません、また今度・・・
SaveAsPDFByLayers2.zip
↓ もし気に入ったらお願いします!
Get this for 120 yen
↓ もし開発手伝ってくださる方いたらよろしくお願いします。
https://github.com/naokazuterada/SaveAsPDFByLayers
新機能
・レイヤーの書出し順序の設定
・PDFのオプション設定
・前回設定の保存
特徴
・ページをレイヤー分けしておくと、自動でPDFに書き出してくれます
・不要なレイヤーは毎回削除するので、無駄にデータが増えません
・レイヤーの並び順に従い、ファイル名の頭に番号がつきます
(後は、Acrobatで連結してください)
機能
・最上位階層のレイヤーを上(または下)から順にPDFで保存します
・ロックされているレイヤーは操作の対象になりません
・ヘッダーなどの共通部分を含むレイヤーは「表示」&「ロック」しておくと便利です
・下位階層のレイヤーは操作の対象になりません。また、最上位階層でも「非表示」&「ロック」状態のレイヤーも非表示のまま書き出し対象になりますので、不必要なレイヤーはあらかじめ破棄しておくことをお勧めします(これを活用してください)
・書き出されたPDFのファイル名の接頭数字は3桁でつくので、Acrobatで一気に読みこんだ時に順番の入替作業が不要で便利です
インストール
ダウンロードしたZipファイルを解凍したら「レイヤー毎にPDFとして保存.jsx」を/Applications/Adobe Illustrator/preset/script/以下に移動。その後、Illustratorを起動します。
使い方
1. Illustratorを起動
2. PDFとして書き出したいAIファイルを開く
3. ファイル>スクリプトから、レイヤー毎にPDFとして保存を選択
4. ダイアログから並び順や保存先、各オプションを設定してOK
動作確認済の環境
Illustrator CS5.1 on MacOSX10.8.3
※ 上記以外の環境で動いたよって人は、コメントなどもらえると嬉しいです。多分CS2以降大体大丈夫なはず。
PDFプリセットへの対応は、時間がなくて間に合いませんでした。すみません、また今度・・・
SaveAsPDFByLayers2.zip
↓ もし気に入ったらお願いします!
Get this for 120 yen
↓ もし開発手伝ってくださる方いたらよろしくお願いします。
https://github.com/naokazuterada/SaveAsPDFByLayers
新機能
・レイヤーの書出し順序の設定
・PDFのオプション設定
・前回設定の保存
特徴
・ページをレイヤー分けしておくと、自動でPDFに書き出してくれます
・不要なレイヤーは毎回削除するので、無駄にデータが増えません
・レイヤーの並び順に従い、ファイル名の頭に番号がつきます
(後は、Acrobatで連結してください)
機能
・最上位階層のレイヤーを上(または下)から順にPDFで保存します
・ロックされているレイヤーは操作の対象になりません
・ヘッダーなどの共通部分を含むレイヤーは「表示」&「ロック」しておくと便利です
・下位階層のレイヤーは操作の対象になりません。また、最上位階層でも「非表示」&「ロック」状態のレイヤーも非表示のまま書き出し対象になりますので、不必要なレイヤーはあらかじめ破棄しておくことをお勧めします(これを活用してください)
・書き出されたPDFのファイル名の接頭数字は3桁でつくので、Acrobatで一気に読みこんだ時に順番の入替作業が不要で便利です
インストール
ダウンロードしたZipファイルを解凍したら「レイヤー毎にPDFとして保存.jsx」を/Applications/Adobe Illustrator/preset/script/以下に移動。その後、Illustratorを起動します。
使い方
1. Illustratorを起動
2. PDFとして書き出したいAIファイルを開く
3. ファイル>スクリプトから、レイヤー毎にPDFとして保存を選択
4. ダイアログから並び順や保存先、各オプションを設定してOK
動作確認済の環境
Illustrator CS5.1 on MacOSX10.8.3
※ 上記以外の環境で動いたよって人は、コメントなどもらえると嬉しいです。多分CS2以降大体大丈夫なはず。
2011/06/13: Illustratorで、Photoshopの透明色を含む画像をプリントアウトしたい
ウェブではなく、印刷の方の話ですが。。
イラストレーターで、.psdや、.pngなどの、透明部分を含む画像を、イラストレーターに配置してプリントアウトするときに、透明部分の後ろのレイヤーの色が、濃い色で出力されてしまったり、予期していない色になることがありますが、この現象の回避方法が分かりました。イラストレーターで、印刷するときのウィンドウの、左のメニューにある、「詳細」を選んで、「ビットマッププリント」にチェックを入れると、透明部分の色がちゃんと出力されるようになります。
このビットマッププリントという機能は、イラレ上で引いたベジェ曲線なども含め、すべてのデータをラスタライズしたような状態で、ビットマップのデータとしてプリンタに転送して印刷する機能のようです。そのため、出力するときの解像度なども選べるようです。また、一度ビットマップに変換するため、テキストなどが少しだけですが、にじんだり、潰れたりもするようです。(若干ですが)
OKWave系の、これとか、これとか、これとか、クリッピングマスクを使うなどとあるのですが、この方法はクリッピングマスクのことがあまり理解できておらず試せていません。(適当にやってみましたが、僕はうまくいきませんでした。)
イラストレーターで、.psdや、.pngなどの、透明部分を含む画像を、イラストレーターに配置してプリントアウトするときに、透明部分の後ろのレイヤーの色が、濃い色で出力されてしまったり、予期していない色になることがありますが、この現象の回避方法が分かりました。イラストレーターで、印刷するときのウィンドウの、左のメニューにある、「詳細」を選んで、「ビットマッププリント」にチェックを入れると、透明部分の色がちゃんと出力されるようになります。
このビットマッププリントという機能は、イラレ上で引いたベジェ曲線なども含め、すべてのデータをラスタライズしたような状態で、ビットマップのデータとしてプリンタに転送して印刷する機能のようです。そのため、出力するときの解像度なども選べるようです。また、一度ビットマップに変換するため、テキストなどが少しだけですが、にじんだり、潰れたりもするようです。(若干ですが)
OKWave系の、これとか、これとか、これとか、クリッピングマスクを使うなどとあるのですが、この方法はクリッピングマスクのことがあまり理解できておらず試せていません。(適当にやってみましたが、僕はうまくいきませんでした。)
2009/06/20: 非表示アイテム・レイヤー・グループを消去するJavascript
非表示状態のレイヤーやアイテム・グループをきれいに消去してくれるJavascriptを作ってみました。ロックされてても関係なく消されます。個人的には最後のクリーンナップがポイント高し。
DeleteAllHiddens.zip
<使い方>
・解凍したファイルを「Adobe Illustrator CS3/プリセット/スクリプト/...」に保存
・「ファイル→スクリプト→DeleteAllHiddenItemsAndLayers」を実行
・実行後アラートで処理結果を表示
<処理の流れ>
非表示状態のアイテムの消去
↓
非表示状態のレイヤーの消去
↓
子要素がなくなったレイヤーの消去(クリーンナップ)
前回のスクリプトの使用前に使うと便利かと思います。
DeleteAllHiddens.zip
<使い方>
・解凍したファイルを「Adobe Illustrator CS3/プリセット/スクリプト/...」に保存
・「ファイル→スクリプト→DeleteAllHiddenItemsAndLayers」を実行
・実行後アラートで処理結果を表示
<処理の流れ>
非表示状態のアイテムの消去
↓
非表示状態のレイヤーの消去
↓
子要素がなくなったレイヤーの消去(クリーンナップ)
前回のスクリプトの使用前に使うと便利かと思います。
2009/06/19: レイヤーごとにPDF書き出しするJavascript
<追記:2013.5.8 バージョンアップしました>
ウェブとは関係ないエントリです。
巷によくあるレイヤーごとPDF書き出しのスクリプトって、その他のレイヤーを非表示にするだけでやってたりするので、書き出したPDFの容量が無駄に大きくなり、あまりよろしくありません。なので、いつも別ファイルに必要なものだけ持っていって書き出したりしていたのですが、やはりつらいのでJavascriptで書いてみました。最上位階層のレイヤーを走査して、その他のレイヤーを毎回消しながら順番にPDF保存していきます。個人的に、ヘッダーなどの共通部分も一つのレイヤーにまとめるやり方をよくするので、それも考慮してみました。
今回、ExtendscriptToolkitを使ってみたのですが、便利ですね。変数値の監視や$クラスを使ったブレークポイント挿入やwrite関数、さらにIllustratorを再起動しなくても実行できるのが素晴らしい。
せっかくなので、作ったスクリプトを公開します。ぜひ使ってみてください。
ソースの上部に主要なPDFの書き出しオプションまとめてるので、必要なら書き換えてください。そのうち、ダイアログで設定可能なようにしたいですな。勉強してみます。
SaveAsPDFByLayers.zip
<追記:2012.2.17>
※ 中身は一緒ですが課金版も用意してみました。100円です。Gumroadなのでその場で簡単にクレジット決済できます。気に入ったら、購入お願いしますっ。売れたら、アップデートする気が起こるかも?
Get this for 100 yen
<使い方>
・解凍したファイルを「Adobe Illustrator CS3/プリセット/スクリプト/...」に保存
・「ファイル→スクリプト→SaveAsPDFByLayers」を実行
・実行後にダイアログが表示されますので、保存先を指定してください
・保存されるPDFは「[3桁連番]_[レイヤー名].pdf」となります
<機能・解説>
・最上位階層のレイヤーを上から順にPDFで保存します
・下位階層のレイヤーは操作の対象になりません
・ロックされているレイヤーは操作の対象になりません
・ヘッダーなどの共通部分を含むレイヤーは「表示・ロック」しておくと便利です
・「非表示・ロック」になっているレイヤーも非表示のまま書き出し対象になりますので、不必要なレイヤーはあらかじめ破棄しておくことをお勧めします(追記:こちらを活用してください)
・書き出されたPDFのファイル名の接頭数字は3桁でつくので、Acrobatで一気に読みこんだ時に順番の入替作業が不要で便利です
ウェブとは関係ないエントリです。
巷によくあるレイヤーごとPDF書き出しのスクリプトって、その他のレイヤーを非表示にするだけでやってたりするので、書き出したPDFの容量が無駄に大きくなり、あまりよろしくありません。なので、いつも別ファイルに必要なものだけ持っていって書き出したりしていたのですが、やはりつらいのでJavascriptで書いてみました。最上位階層のレイヤーを走査して、その他のレイヤーを毎回消しながら順番にPDF保存していきます。個人的に、ヘッダーなどの共通部分も一つのレイヤーにまとめるやり方をよくするので、それも考慮してみました。
今回、ExtendscriptToolkitを使ってみたのですが、便利ですね。変数値の監視や$クラスを使ったブレークポイント挿入やwrite関数、さらにIllustratorを再起動しなくても実行できるのが素晴らしい。
せっかくなので、作ったスクリプトを公開します。ぜひ使ってみてください。
ソースの上部に主要なPDFの書き出しオプションまとめてるので、必要なら書き換えてください。そのうち、ダイアログで設定可能なようにしたいですな。勉強してみます。
SaveAsPDFByLayers.zip
<追記:2012.2.17>
※ 中身は一緒ですが課金版も用意してみました。100円です。Gumroadなのでその場で簡単にクレジット決済できます。気に入ったら、購入お願いしますっ。売れたら、アップデートする気が起こるかも?
Get this for 100 yen
<使い方>
・解凍したファイルを「Adobe Illustrator CS3/プリセット/スクリプト/...」に保存
・「ファイル→スクリプト→SaveAsPDFByLayers」を実行
・実行後にダイアログが表示されますので、保存先を指定してください
・保存されるPDFは「[3桁連番]_[レイヤー名].pdf」となります
<機能・解説>
・最上位階層のレイヤーを上から順にPDFで保存します
・下位階層のレイヤーは操作の対象になりません
・ロックされているレイヤーは操作の対象になりません
・ヘッダーなどの共通部分を含むレイヤーは「表示・ロック」しておくと便利です
・「非表示・ロック」になっているレイヤーも非表示のまま書き出し対象になりますので、不必要なレイヤーはあらかじめ破棄しておくことをお勧めします(追記:こちらを活用してください)
・書き出されたPDFのファイル名の接頭数字は3桁でつくので、Acrobatで一気に読みこんだ時に順番の入替作業が不要で便利です