インデザインで、ひらがな/カタカナを相互変換。
インデザインで文章中のひらがな/カタカナを入れ替えて変換するという
イレギュラーな仕事があったのでスクリプトを作りました。
普通に作業すると、単純に文字を入力し直すことになってしまい、
修正にかなり時間が掛かってしまいます。
そこで、スクリプトを作成しようと思ったのですが、
まず、インデザインの検索機能を使うと、
(もとの文字列) → インデザインで、ひらがな/カタカナを相互変換。
(カタカナ変換) → インデザインデ、ヒラガナ/カタカナヲ相互変換。
(ひらがな変換) → いんでざいんで、ひらがな/かたかなを相互変換。
と一方通行の変換はできるのですが、
ひらがなの時は → カタカナ、カタカナの時は → ひらがな変換という
条件つきの変換ができません。たぶん…
(目的の変換) → いんでざいんデ、ヒラガナ/かたかなヲ相互変換。
そこで単純にJavaScritpのif文を使用して作成してみました。
ひらがな → カタカナ変換、カタカナ → ひらがな変換には、
下記のサイトを参考にさせていただきました。
▼JavaScript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
sel = app.activeDocument.selection; for (j=0; j<sel.length; j++) { selObj = sel[j]; for (i=0; i<selObj.characters.length; i++) { cObj = selObj.characters[i]; if (cObj.contents.match(/[ぁ-ん]/)){ TargetString = cObj.contents.replace(/[ぁ-ん]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) + 0x60); }); cObj.contents = TargetString; }else if (cObj.contents.match(/[ァ-ン]/) ){ TargetString = cObj.contents.replace(/[ァ-ン]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) - 0x60); }); cObj.contents = TargetString; } } } |
参考情報
カタカナをひらがなに一括変換する – JavaScript TIPSふぁくとりー