小文字から大文字へ

[9242]小文字から大文字へ 投稿者:カオリ 投稿日:2017/05/24 11:18:11
いつもお世話になっています。

InDesign CC2017で、ドキュメント内にある小文字を全て大文字に
したいのですが、検索置換などで一括で変換する方法はあるでしょうか。
[a-z]で小文字を変換しても置換文字をどう設定するのかわかりませんでした。

よろしくお願いします。
[9243]Re: 小文字から大文字へ 投稿者:YUJI 投稿日:2017/05/24 11:35:22
[書式]メニューにある[大文字と小文字の変更]→[すべて大文字]を実行してはどうですか。
[9244]Re: 小文字から大文字へ 投稿者:カオリ 投稿日:2017/05/24 11:44:15
YUJIさん
返信ありがとうございます。

最初の投稿で書いておくべきでしたが、該当箇所が
大量にあるので、検索置換で探せないものかと思ったのですが
やはりその方法しかないでしょうか。
[9245]Re: 小文字から大文字へ 投稿者:(z-) 投稿日:2017/05/24 12:37:59
ちょっとスクリプト書いてみました
-------------------------
var doc = app.activeDocument;
app.findGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences.findWhat = "[a-z]+";
var myFind = doc.findGrep();
for(var i = 0; i < myFind.length; i++){
myFind[i].select();
app.menuActions.item("$ID/To Uppercase").invoke();
}
doc.selection = null;
-------------------------
文字間のカーニングなどはクリアされてしまうようなのでご留意のもとにお試しいただければ。
[9246]Re: 小文字から大文字へ 投稿者:カオリ 投稿日:2017/05/24 13:36:43
(Z-)様
ありがとうございます。できました!

ちなみに段落スタイルで絞って変換することもできますか?
できる場合、調べてやってみたいと思いますので
できるかだけでも教えてもらえるととても助かります。

よろしくお願いします。
[9247]Re: 小文字から大文字へ 投稿者:uske_S 投稿日:2017/05/24 15:11:28
横槍すみません。

段落スタイルを絞り込む場合、
app.findGrepPreferences
に任意の段落スタイルを設定します。
これは正規表現検索なので、InDesignの検索置換パネル、
その中の正規表現タブを開いた状態でスクリプトを実行すると、
そこに情報が書き込まれているのがわかると思います。
(検索条件を設定して、その設定値をスクリプトから読み取れれば…)

また、仮に選択範囲にだけ絞りたい場合は、
var doc = app.activeDocument;
の部分を変更します。
現在はactiveDocument(=前面ドキュメント)に対して実行していますが、
前面ドキュメントの中から選択範囲を指定してあげます。

もしテキスト中にウムラウト(üなど)が出てきて、これも含めたい場合は、
正規表現を[a-z]+から\l+(小文字のLです)としてあげるといいと思います。

以上横槍でした。
[9248]Re: 小文字から大文字へ 投稿者:カオリ 投稿日:2017/05/25 10:37:58
uske_S様

アドバイスありがとうございます。
すぐにはできないかもしれませんが、教えてもらえたことが
できると他でも役に立つはずですので試してみたいと思います。

ありがとうございました。
[9249]Re: 小文字から大文字へ 投稿者:(z-) 投稿日:2017/05/25 12:20:01
横槍の横槍すみません。

任意の段落スタイルに絞り込んで検索する場合は
app.findGrepPreferences.appliedParagraphStyle = doc.paragraphStyles.item("段落スタイル名");
を、var myFind = doc.findGrep(); の行の直前あたりに入れておけばおっけーですが、
お目当ての段落スタイルがスタイルグループ内にいる場合、指定がちょっとややこしくなります。

以上横々槍でした。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)