スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

異体字(等幅半角字形)に切り替えるスクリプト

【おわび】
カテゴリーがIllustrator JSになっているにもかかわらず、IndesignのJavascriptを掲載していました。おわびして訂正いたします。

中ゴシックBBBのデフォルト英数字が気にくわなかったので作りました。
テキストフレームやテキストを選択してから実行して下さい。

//
// 選択されたテキストフレームや選択されているテキストの英数字等を
// 異体字(等幅半角字形)に切り替えるスクリプト
//
var docObj = app.activeDocument;
var selObj = docObj.selection;

var i, j;

// オブジェクトが選択されている場合
if(selObj.length != 0) {
// 任意の段落が選択されている場合
if (selObj.typename == "TextRange") {
for(i = 0; i < selObj.length; i++) {
// 対象文字が英数字等の場合、等幅半角字形に切り替える
if(selObj.characters[i].contents.match(/[0-90-9a-zA-Za-zA-Z\-\:]/) != null)
selObj.characters[i].characterAttributes.alternateGlyphs = AlternateGlyphsForm.HALFWIDTH;
}
// テキストフレームが選択されている場合
} else if( (selObj[0].typename == "TextFrame") ) {
for(j = 0; j < selObj.length; j++) {
for(i = 0; i < selObj[j].contents.length; i++) {
// 対象文字が英数字等の場合、対象文字を等幅半角字形に切り替える
if(selObj[j].characters[i].contents.match(/[0-90-9a-zA-Za-zA-Z\-\:]/) != null)
selObj[j].characters[i].characterAttributes.alternateGlyphs = AlternateGlyphsForm.HALFWIDTH;
}
}
}
} else alert("テキスト又はテキストフレームを選択して下さい");
スポンサーサイト

COMMENTS

等幅半角字形に切り替わらない?

いっちゃんさんはじめまして。
私は新ゴシックの数字をhwid変換したくて
こちらにたどり着きました。

OSX10.5.5+illustrator CS3で格闘中です。
スクリプト初挑戦なのですが、

上記の「// 選択された~選択して下さい");」までを
ExtendScript Toolkit2
にペーストして「異体字.jsx」という名前で
illustrator CS3>プリセット>スクリプト>に保存。
illustratorを起動してスクリプトを実行・・・
しても、英数字がhwidにならないのです。
字形パネルで見ると「U+ff●● Sjis:●●●●」(Xは数字)という
入力した状態のままです。

私何か手順を間違えていますでしょうか。
いっちゃんさんのお時間があるときでかまいませんので
ヒントがありましたら教えて頂けると助かります。

申し訳ありません。IndesignのJavascriptを載せていました。

さんかくさん
ご訪問および拙いスクリプトをご使用いただき、誠にありがとうございます。
カテゴリーがIllustrator JSになっているにもかかわらず、IndesignのJavascriptをずっと掲載しておりました。ここにおわび致しますとともに、Illustrator用のJavascriptを再掲載させていただきます。
どうかこれからもこれ懲りずに、本ブログをよろしくお願いいたします。

ありがとうございます!

いっちゃんさん、ありがとうございました!
まさかこんなに早く対応して頂けるとは思わなくてびっくりです。
おかげさまでバッチリ動きます!


COMMENT FORM

TRACKBACK


この記事にトラックバックする(FC2ブログユーザー)

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。