日本語は左から右に筆記しますが、アラビア語などは右から左に筆記します。今回のスクリプトは、この筆記方向を反転させるものです。例えば
日刊デジクリ
であれば
リクジデ刊日
のようになります。
以下のスクリプトはIllustrator 10/CS/CS2で動作するものです。
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
txt = selObj[i].contents;
result = "";
for (c=txt.length-1; c>=0; c--)
{
result += txt.charAt(c);
}
selObj[i].contents = result;
}
CS/CS2以降であれば以下のスクリプトでも動作します。これは段落単位で処理しますが、上記のものと結果は同じになります。何か段落ごとに処理したい場合に参考にしてください。
selObj = activeDocument.selection;
for (i=0; i<selObj.length; i++)
{
para = selObj[i].paragraphs;
for (j=0; j<para.length; j++)
{
txt = para[j].contents;
result = "";
for (c=txt.length-1; c>=0; c--)
{
result += txt.charAt(c);
}
para[j].contents = result;
}
}
IllustratorだけでなくPhotoshopでも可能です。以下のスクリプトはPhotoshop CS/CS2/CS3で動作するものです。
docObj = activeDocument;
for (i=0; i<docObj.artLayers.length; i++)
{
layType = docObj.artLayers[i].kind;
if (layType == LayerKind.TEXT)
{
txt = docObj.artLayers[i].textItem.contents;
result = "";
for (c=txt.length-1; c>=0; c--)
{
result += txt.charAt(c);
}
docObj.artLayers[i].textItem.contents = result;
}
}
[
サンプルをダウンロード]