23)テキストを全てアウトライン

| コメント(2) | トラックバック(2)

IllustratorCS4と5で最前面のドキュメントすべてのテキストフレームをアウトライン化します。アウトライン化するまえにバックアップしておく事を強くおすすめします。
たぶん他のバーションのIllustratorでも動くと思います。

DTPBooster13で質問されて、出来るかなーって検証してたら結局作ってしまいました。

こうちゃん犬猫まみれさんもAppleScriptでアップされています。会場ではじめてお会いしました。ずいぶん若い好青年だった。

■■■使い方■■■
Illustratorドキュメントを開いている状態で使用してください。

実行すると
まずは全レイヤーのロックを解除します。
後はテキストフレームのロックを解除してどんどんアウトライン化していきます。
非表示のオブジェクトは一瞬表示してアウトラインして非表示に戻します。

非表示のレイヤーの中などにテキストフレームがあり、失敗した場合はメッセージを出します。

DTPBooster13の質問のお答え。難しいかと思ったら簡単だった。
ちなみにconvert to pathsがあるって質問に答えたんですがAppleScriptでした。

ダウンロードはこちらAiOutline.zip

ソースも

var mydoc = app.documents[0];
//レイヤーのロックだけは解除しておく
layerUnLock(mydoc);
var tfitems = mydoc.textFrames;
var tfcount = tfitems.length;
var mymsg = "";
for(var i = tfcount - 1;i > -1;i--){
	try{
		visiblebak = tfitems[i].hidden;
		tfitems[i].locked = false;
		var newgroup = tfitems[i].createOutline();
		newgroup.hidden = visiblebak;
	}catch(e){
		mymsg = "アウトラインできなかったオブジェクトがあります。";
	}
}
if(mymsg != ""){
	alert(mymsg);
}
function layerUnLock(myObj){
	var lycount = myObj.layers.length;
	for(var n = 0;n < lycount;n++){
		if(myObj.layers[n].visible == true){
			myObj.layers[n].locked = false;
			layerUnLock(myObj.layers[n])
		}
	}
}

トラックバック(2)

トラックバックURL: http://www.adg7.com/mt/mt-tb.cgi/590

2010年6月2日、表参道 The Gallery「station 5」でDTP... 続きを読む

たけうちとおるのスクリプトノート - page2011のセッション終了 (2011年2月 8日 00:36)

今回は妻に書いてもらいました。 会場は満員 今回も男前に撮ってもらった。 (新... 続きを読む

Comments are nofollow setting

コメント(2)

ありがとうございます(^o^)/
まさか、作っていただけるとは! 本当に助かります!
問題なく、スカッとアウトラインをとってくれてます!

スクリプトは会場でお話ししました通りの超初心者なので
(自分で作ると)どれだけかかるやら?と思っていました。
通常はIndesignを使うことが多いのですが
質問の仕事はIllustratorで、しかも多数ファイル。
こういう時こそ、スクリプト! やっぱり、便利です!

ちゃんと勉強する必要性がありますね。

最後に重ねて重ねてお礼を申し上げます。

>booster13質問者さん
こんにちは。作っちゃいました(笑)
グループの中とかレイヤーやサブレイヤーの中とか
おっかけていってちょっとテクニックがいるかとおもいきや
単にドキュメントのテキストフレームを数えてアウトラインするだけ。
(Illustratorってそういう事あります。)
レイヤーのロックや非表示を考えなければもっと簡単でした。
ちょうどいい練習になったかもしれませんね。書かなきゃ良かったかなぁ。。。反省
また、ぜひスクリプトにチャレンジしてくださいね。

コメントする

エントリー一覧

OpenID対応しています OpenIDについて
Powered by Movable Type 6.0.3
印刷会社、大阪の遊文舎