スクリプトの検索置換でのグループ内テキスト
[9380]スクリプトの検索置換でのグループ内テキスト 投稿者:aaa 投稿日:2018/01/16 14:25:30
WindowsのIndesignです。よく出てくる単語修正を
ドキュメント全頁にわたって
一気に検索置換できるJavaスクリプトを作っています。
一応、単一であっても、連結してあっても
テキストフレームに対して問題なく動作するのですが、
なぜか「グループ化されたオブジェクト内のテキスト」は
無視されてしまいます。
テキストフレーム同士のグループでも、
オブジェクトフレームとテキストのグループでも、
該当する単語が含まれたテキストフレームが
何らかの形でグループ化されていると反応しないのです。
グループを解除して再度スクリプトをあてると、
きちんと動作します。
スクリプトは下記のようなものです
グループ内のテキストフレームに入ったテキストも
選ばせるような記述などがあるのでしょうか?
もしよろしければ教えてください。
//プロパティの初期化
app.findTextPreferences.findWhat = NothingEnum.nothing;
app.changeTextPreferences.changeTo = NothingEnum.nothing;
//検索オプション
app.findChangeTextOptions.caseSensitive = true;//大文字小文字を区別するかどうか
app.findChangeTextOptions.kanaSensitive = true;//カナを区別するかどうか
app.findChangeTextOptions.widthSensitive = true;//全角半角を区別するかどうか
//検索条件と置換後の文字列との設定
app.findTextPreferences.findWhat = "あああああ";
app.changeTextPreferences.changeTo = "いいいいい";
//ドキュメント全体に対して
for (var i = 0; i < app.activeDocument.pages.length; i++) {
var pageObject = app.activeDocument.pages[i];
for (var j = 0; j < pageObject.textFrames.length; j++) {
pageObject.textFrames[j].parentStory.changeText();
}
}
ドキュメント全頁にわたって
一気に検索置換できるJavaスクリプトを作っています。
一応、単一であっても、連結してあっても
テキストフレームに対して問題なく動作するのですが、
なぜか「グループ化されたオブジェクト内のテキスト」は
無視されてしまいます。
テキストフレーム同士のグループでも、
オブジェクトフレームとテキストのグループでも、
該当する単語が含まれたテキストフレームが
何らかの形でグループ化されていると反応しないのです。
グループを解除して再度スクリプトをあてると、
きちんと動作します。
スクリプトは下記のようなものです
グループ内のテキストフレームに入ったテキストも
選ばせるような記述などがあるのでしょうか?
もしよろしければ教えてください。
//プロパティの初期化
app.findTextPreferences.findWhat = NothingEnum.nothing;
app.changeTextPreferences.changeTo = NothingEnum.nothing;
//検索オプション
app.findChangeTextOptions.caseSensitive = true;//大文字小文字を区別するかどうか
app.findChangeTextOptions.kanaSensitive = true;//カナを区別するかどうか
app.findChangeTextOptions.widthSensitive = true;//全角半角を区別するかどうか
//検索条件と置換後の文字列との設定
app.findTextPreferences.findWhat = "あああああ";
app.changeTextPreferences.changeTo = "いいいいい";
//ドキュメント全体に対して
for (var i = 0; i < app.activeDocument.pages.length; i++) {
var pageObject = app.activeDocument.pages[i];
for (var j = 0; j < pageObject.textFrames.length; j++) {
pageObject.textFrames[j].parentStory.changeText();
}
}
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)