Illustratorの全てのフォントで任意のテキストを生成するスクリプト
制作経緯
既にあった「fontsample.jsx Version 1.0.0」では、フォント数が多いと描画可能範囲を超えて配置されたので、フォント数に応じて自動でアートボードサイズを決めてくれるように改造しました。
概要&ダウンロード
スクリプト
// 元の情報
// fontsample.js Version 1.10
// The MIT License
// Copyright http://logic.moo.jp/data/archives/788.html
// 僕の場合フォントが多すぎて溢れてしまう場合があったので、もっと手軽に扱えるように書き換えました。
// Twitter : @Yamkaz
font_size = 5;
type_text = '';
type_text = prompt("全フォントで試すよ!", "");
x = 0;
y = 0;
var doc = app.activeDocument;
var artboards = doc.artboards;
var artboard = artboards[artboards.getActiveArtboardIndex()]; // 画面上のアートボードを取得。
artboard.artboardRect = [0, 0, (((app.textFonts.length/100)+2)*100), -100*font_size*2-200]; // アートボードをフォント数に応じて切り替える。
// システムにインストールされているフォント全てを調べて、載せる。
for (i = 0; i < app.textFonts.length; i++) {
installed_font_name = app.textFonts[i].name;
txt = '';
if (type_text != '') {
txt = type_text;
} else {
txt = installed_font_name;
}
textObj = activeDocument.textFrames.add();
textObj.contents = txt;
y++;
textObj.translate(x, -y * font_size * 2 -100); // 余白100pxで、全体を配置。
if (i % 100 == 0) {
x += 100;
y = 0;
}
text_fonts_obj = app.textFonts.getByName(installed_font_name); // textfontsからあるフォントを探し出す。 それをtext_fonts_objに入れる。
frames = app.activeDocument.textFrames;
j = frames.length - 1;
frames[0].textRange.characterAttributes.textFont = text_fonts_obj; // あるテキストに代入。
frames[0].textRange.characterAttributes.size = font_size; // あるテキストのサイズを指定。
}
Twitter:@Yamkaz
ポートフォリオサイト:yamakaz.work
サポートいただけると喜びます。本を読むのが好きなので、いただいたものはそこに使わせていただきます