【InDesign】選択している段落に入力した数値の分だけインデント | Blue-Screeeeeeen.net―youichi7imazekiのDTPメモ―

トップページ » InDesign » 【InDesign】選択している段落に入力した数値の分だけインデント

【InDesign】選択している段落に入力した数値の分だけインデント

公開日:2017年3月23日 最終更新日:2017年3月28日

try{
var selObj = app.activeDocument.selection[0];
    //インデント指定
    var pr=prompt("インデントする長さを入力","");
    //全角数字だったら半角に置換
  prrep = pr.replace(/[A-Za-z0-9]/g, function(s) {
    return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
  });
    var prnum=Number(prrep);

for (i=0; i<selObj.paragraphs.length; i++)
{
selObj.paragraphs[i].leftIndent=prnum;
} }
catch(e){
alert("処理は中断されました")
}


使い方

 テキストを選択してスクリプトを実行すると、入力フォームが表示されます。そこに入力した数値分※だけ、選択した段落をインデントします。

※単位はInDesignの環境設定に依存しています。


 このスクリプトでやることはほぼInDesignの通常操作です。ただ、

・突発的に、段落スタイルに登録してないインデント幅が発生した場合、「ここだけだしスタイル作るのめんどくさい…」(その後また出てくるかもしれないけど)
・「段落パネルやコントロールパネルまでフォーカスするのめんどくさい…」(入力欄小さいし)
・単位をうっかり重ね打ちしたときの「無効な数値です」がUZAI

そんなときに少しだけ時間が短縮できるかもしれません。


全角→半角の置換

プログラマー社長の「日々発見」| javascript で英数字の 全角⇔半角 変換


突き出しインデントにする版

/*選択している段落に入力した数値の分だけ突き出しインデント

  */
try{
var selObj = app.activeDocument.selection[0];
    //インデント指定
    var pr=prompt("インデントする長さを入力","");
    //全角数字だったら半角に置換
  prrep = pr.replace(/[A-Za-z0-9]/g, function(s) {
    return String.fromCharCode(s.charCodeAt(0) - 0xFEE0);
  });
    var prnum=Number(prrep);
var prnummi="-"+prnum;

for (i=0; i {
selObj.paragraphs[i].leftIndent=prnum;
selObj.paragraphs[i].firstLineIndent=prnummi;
}
}
catch(e){
alert("処理は中断されました")
  }


タグ:


  • 最近の投稿

  • カテゴリー

  • 月別の記事

  • おことわり

     Adobe、InDesign、Illustrator、Photoshop、Acrobatは、Adobe Systems Incorporated(アドビシステムズ社)の米国および他の国における商標または登録商標です。本サイトでは、RおよびTMを省略しております。