【InDesign】選択したオブジェクトの座標と同じ位置にあるテキストフレームを全て削除 | Blue-Scre{7}n.net | よそいちのDTPメモ

トップページ » InDesign » 【InDesign】選択したオブジェクトの座標と同じ位置にあるテキストフレームを全て削除

【InDesign】選択したオブジェクトの座標と同じ位置にあるテキストフレームを全て削除

公開日:2018年5月9日 

支給されたInDesignファイルは、柱が全ページオーバーライドされていた。しかも1ファイルあたりが100ページを超えている

このようなInDesignファイルは、何らかの理由で柱にまつわる便利機能を使えない状態にあったはずです(そのために全ページ柱部分のテキストがオーバーライドされているんでしょうし)。

 こちらで修正が可能なら、テキスト変数、セクションマーカーを使用したものを柱にしたいところです。しかし、既存のテキストフレームを手作業で削除するのは結構な手数がいる…という場合にこのスクリプトの出番です。

手順

 任意のページのテキストフレームを選択しスクリプトを実行すると、同じ座標値にあるテキストフレームが全て削除されます。

スクリプト本文

ダウンロード

//選択したオブジェクトの座標を取得
function ref(){
    var sel=app.activeDocument.selection[0];
    return sel.visibleBounds;
  }
var ref=ref();
//ドキュメントのテキストフレームを対象に
var txFrame=app.activeDocument.textFrames;
  var count=txFrame.length;
  for (var i =count-1; i > -1; i--) {
    if((txFrame[i].visibleBounds[0].toFixed(2)==ref[0].toFixed(2))&&
    (txFrame[i].visibleBounds[1].toFixed(2)==ref[1].toFixed(2))&&
    (txFrame[i].visibleBounds[2].toFixed(2)==ref[2].toFixed(2))&&
    (txFrame[i].visibleBounds[3].toFixed(2)==ref[3].toFixed(2)))
    {
      txFrame[i].remove();
      };
    };

タグ: | 


広告