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

Illstratorのスクリプトでの文字変換について質問です。
下記サイトを元にIllstratorのテキストの
一部書体変換を行おうかと検討中です。
http://www.openspc2.org/projectX/Illustrator/0003/index.html

複数選択した際に、画像などテキストオブジェクト以外を選択していた場合
「オブジェクトではありません」とエラーとなってしまいます。

エラーにならない方法はありますでしょうか?
try { }catch(e){}
なのかなと試してみましたができませんでした・・

どうぞよろしくお願いいたします。

●質問者: ohtsu6
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3
●300ポイント ベストアンサー

こんな感じで、駄目なんでしょうか?

fntArialBlack = app.textFonts.getByName("Arial-Black");
repStr = "0123456789";
sel = activeDocument.selection;
for (j=0; j<sel.length; j++)
{
 selObj = sel[j];

 try { // ★ここと

 for (i=0; i<selObj.textSelection[0].characters.length; i++)
 {
 c = selObj.textSelection[0].characters[i].contents;
 if (repStr.indexOf(c) > -1)
 {
 selObj.textSelection[0].characters[i].textFont = fntArialBlack;
 }
 }

 } catch (e) {} // ★ここ
}

「テキストの一部」というのが、選択したオブジェクトだけを対象にする、ということであれば、
http://www.openspc2.org/book/IllustratorCS/easy/039/index.html
ここのコードでも、いけそうな気がします。

timesBold = app.textFonts.getByName("Times-Bold");
sel = activeDocument.selection;
for (i=0; i<sel.length; i++)
{
 try { // ★ここと
 sel[i].textSelection[0].textFont = timesBold;
 } catch(e) {} // ★ここ
}

質問であげられたページでは、

日本語書体の場合は"ヒラギノ角ゴW3"などと指定せずに英文字で指定するようにしてください。

と、注意書きがありますが、これに関しては大丈夫ですか?

http://www.openspc2.org/book/IllustratorCS/easy/039/index.html
には、主なフォントの英文字の対応が載っているので、参考になるかもしれません。


ohtsu6さんのコメント
a-kuma3さま ありがとうございます! できました。
関連質問

●質問をもっと探す●



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