クリエイター手抜きプロジェクト[111]InDesign CS2編 自動的にルビをふる/古籏一浩

投稿:  著者:  読了時間:3分(本文:約1,200文字)


選択されたテキストフレーム内にある、特定の文字にルビを振りたい場合があります。運悪く(?)付属のInDesign CS2 リファレンスには日本語に関する部分が一部掲載されていません。ルビも同様で、ドキュメントには掲載されておらず、内部のプロパティを見て推測することになります。

以下のスクリプトは、選択された複数のテキストフレーム内にある金という文字にルビを振るものです。実行すると自動的にルビが振られます。


srcStr = "金";
rubyStr = "かね";
sel = app.activeDocument.selection;
for (i=0; i< sel.length; i++)
{
text = sel[i].characters;
for (j=0; j< text.length; j++)
{
chr = text[j];
if (chr.contents == srcStr)
{
chr.rubyFlag = true;
chr.rubyString = rubyStr;
}
}
}

ルビを振る場合には、ルビを振る文字のrubyFlagプロパティにtrueを入れてからrubyStringにルビ文字を指定します。

ルビのサイズを指定する場合には、rubyFontSizeにルビのサイズをポイント単位で指定します。他にも書体や位置揃えなども指定できます。これらのプロパティに関してはInDesign CS2自動化作戦を参照してみてください。

以下のサンプルはルビをふって、ルビのサイズを4ポイントにするものです。


srcStr = "金";
rubyStr = "かね";
sel = app.activeDocument.selection;
for (i=0; i< sel.length; i++)
{
text = sel[i].characters;
for (j=0; j< text.length; j++)
{
chr = text[j];
if (chr.contents == srcStr)
{
chr.rubyFlag = true;
chr.rubyString = rubyStr;
chr.rubyFontSize = 4;
}
}
}


【古籏一浩】openspc@po.shiojiri.ne.jp
http://www.openspc2.org/
今年は、これで最後です。ということで皆さん、よいお年を。
来年もよろしく、お願いいたします。

今年の総理の標語「うつくしい日本」 【美しい日本】
来年の現実の標語「うつくるしい日本」【鬱(うつ)、苦しい日本」】

photo
改訂新版 JavaScript 例文活用辞典
古籏 一浩
技術評論社 2006-10-20
おすすめ平均 star
starWebよりも、本で手元に置いておきたい。

プロとして恥ずかしくないJavaScriptの大原則



photo
Google Maps API逆引きクイックリファレンス―WEB2.0対応
古籏 一浩
毎日コミュニケーションズ 2006-09
おすすめ平均 star
starようやく出ました。使えるGoogleMapsリファレンス。

Google Maps API徹底活用ガイド Google Maps Hacks -地図検索サービス徹底活用テクニック- Googleマップ+Ajaxで自分の地図をつくる本  Google Maps API徹底活用 詳解RSS~RSSを利用したサービスの理論と実践 サーバサイドAjax入門 Java/PHP/ASP.NET連携でAjaxプログラミングを極める!

by G-Tools , 2006/12/18