top

【IllustratorCS3】ブツ切りテキスト結合.jsx

by buruge ~ 2月 12th, 2009. Filed under: DTP, IllustratorCS3+javascript.

久しぶりにスクリプトあげてみます。

ブツ切れテキストを結合するスクリプト。
IllustoratorCS3用です。

たまにCADデータや、エクセル等から作ったPDFや、昔の環境で作成したPDFをIllustoratorで開いて作業しないといけない場合がありますよね?無かったらここでこの話はおしまいw
そういった際に、図面は問題なく編集できても、テキストがブツ切れ状態でとってもめんどくさいことがあります。
(「もやしまつり。」というテキストがあった場合「も」「やし」「ま」「つり」「。」という具合に切れる。)
これはオブジェクトの順番さえきちんと整っていれば、そのバラけたテキストを選択してコピーし、改めてテキストツールでペーストしてやると結合されます。

↓ちなみに、そのコピペでの結合方法@DTP駆け込み寺過去ログ様
http://bbs.ddc.co.jp/mt/dtpbbs/archives/_20040205021443.html

ただ、細々したテキストが沢山あった場合にコピペし続けるのもめんどくさいです。
そこで今回は結合したいブツ切れテキストを結合してくれるスクリプトを作成してみました。

と、ここまで書いて、なんかそういえばこういうのあったぞ?と不安になってぐぐってみたら

ひゃー!イラレで便利の倉田タカシさんが作ってたー!!
http://d-p.2-d.jp/ai-js/pages/01_scripts/text/index.html#12_text_joint_char
「テキスト連結(たてバラ・よこバラ)」
CS2用のスクリプトを、うちのCS3&MaxOSX環境で試してみたところ、問題なく動きました。
これ使えば解決ですw

ただ、一応勉強がてら書いてみたのでのっけてみまーす。おかしいところとかあれば指摘いただけると嬉しいですし…。
「テキスト連結(たてバラ・よこバラ)」と違うのはグループ化しい点です。
たぶんグループ化するメリットがあるはずなので、スクリプト読まなきゃ。

改行とかは全然考えてないので、横一行のみ有効です。
縦も一応試してみたんだけど、いずれもデータ上の書き込み順に並ぶ感じです。
また、文頭の書体に統一されます。途中で違う書体が使われていたとしても文頭の書体に置き換わってしまうので気をつけてください。
詰めもめちゃめちゃになるかも。
なんか良いとこなしだな(^^;

/*

ブツ切りテキスト結合.jsx

動作確認:MacOSX 10.5.2 IllustratorCS3
このスクリプトで何か異常が起こっても責任は負いかねます。

2009.02.12 作成
buruge
http://buruge.net

*/

if(app.documents.length > 0){//ファイルが開かれているか判定
var sel = activeDocument.selection;
if(sel.length > 1){//オブジェクトが二つ以上選択されているか
var selList = activeDocument.selection;
for(i = 0 ; i < sel.length ; i++){//選択した中にテキストオブジェクト以外がないか確認
if(selList[i].typename != “TextFrame”){
alert(”テキストオブジェクトを二つ以上選択してください。「”+selList[i].typename+”」が含まれています。”);
i = sel.length+1;//エラー判定
}
}
if(i == sel.length){//エラー判定でどうだったか
for(j = sel.length-2 ; j > -1 ; j–){//横書き文字の場合、右側から取得してるっぽいので、逆からループをまわす
selList[sel.length-1].contents = selList[sel.length-1].contents+selList[j].contents;
selList[j].remove();
}
}
}else{
alert(”テキストオブジェクトを二つ以上選択してください。”);
}
}else{
alert(”ドキュメントが開かれていません。”);
}

Leave a Reply