InDesign:サイズ増加学会

…いや、そんなタイトルにする気はなかったんですが。魔がさすなあ。
 いや別に個人レベルで差別にあたる気はありません。なかよくしましょう。
でも誘わないで。呼ばないで。頼らないで。投票ぐらい好きな党にさせて。
 いえわたくしごとです。

InDesignのお手軽拡縮機能である、
「サイズ増加 / スケール 1%」、同5%増加、1%減少、5%減少というのがあります。
デフォルトではCommand+,(.)、Command+Option+,(.)が充てられています。
 チョンだのテンだのだと覚えにくいので、不等号<>を目印にぶっ叩くといいでしょう。
これがCS2以前とCS3以降で挙動が違うのは、昭和生まれの方ならもうご存知でしょう。
 「サイズ増加 / スケール 1%」したとき、
CS2以前は現状の%に+1%加算され、小数がある場合は繰り上げにとどまりました。
 95.5%(元)→96%→97%→98%…
CS3からは相対的に101%拡大します。
 95.5%(元)→96.455%→97.42&→98.394%…

んーで、どっちがいいか、というより、どっちが好きかという話。
 ウチは職種柄、CS3以降の方で助かってます。ヘンタイなスケールで配置された画像を扱う事が多いので、CS2までは、クソ馬鹿でっかい画像が2%で貼られてるのを-1%したら半分になっちゃったよ、とか、逆に500%とかで貼られたのを+5%して505%にしたところで屁の突っぱりにもなりゃしねえよ、とか、ほとんど業務上では使えなかったのです。。

それでも作業環境は千差万別、CS2以前の方式を好む愛すべきアンティーク野郎共は、少なくない。むしろ多い。みたい。いやほんとは知らないけど。何人かいた。

で、話の流れでこしらえてみました。
 自分用スクリプトの改変のつもりが、まるきり書き直すはめになってますが。
そして、出来上がってみたら自分に用のない物になっちゃってますが。。うはーw
 つまるところ、CS3以降用です。



id_scaleSupport.jsx
InDesignCS3(Mac)で動作確認。
他でもてきとうに動くとは思います。
言って頂ければ気が向いたとき直します。

CS4以降については本記事下の追加情報をどうぞ
※イベントハンドラとして動作します。スクリプトの置き場所は
アプリケーションフォルダ>Scripts>Startup Scripts 内となります。
Windowsはどうなんだっけ。あのーてきとうにやってください。



前述の標準機能「サイズ増加 / スケール 1%」、同5%増加、1%減少、5%減少
 の4つに反応して、標準機能の動作をキャンセルしつつCS2ライクなサイズ処理をします。
  …のはずが、「この操作は添付スクリプトによりキャンセルされました」だかなんだか、いちいち叱られるのを黙らせる手段がおぼつかなかったため、
 「標準機能の処理後、こっそりそれを取り消してからCS2同様のサイズ処理をする」仕様となっております。
・選択オブジェクトが単数の時のみ動作します。複数選択の場合はバージョン間の差異はないはずなので。
・標準機能と違い、グラフィックフレームを選択してサイズ増減を行った際、中身も一緒にやります。
 なんとなくその方が便利な気がしたので、よかれと思って。おまけです。
・その絡みで、テキストフレームに対して行った場合も中のテキストサイズに影響を及ぼしてしまいます。
 これについては難色気味ですが、機会があればいずれ需要に沿いたいような気がしなくもない気がしますかも知れません。
・1%の時は整数に繰り上げ(下げ)、5%の時は5の倍数に繰り上げ(下げ)ます。
・イベントハンドラを削除したい時用のスクリプトを用意していません。手元のテストでワヤクチャになってイヤになった為です。潔くスクリプトをどかした上でアプリケーションを再起動して下さい。

あのー単純にtransform()で済まそうと思ったらば、100%からちまちまやって様子を見ているうちに114.999999999%なんてのが出るようになってしまったので、横スケールと縦スケールが同一の場合は瞬間的にスクリプトプリファレンスのバージョンを4(CS2)に落としてresize()で処理するようにしてみた。
 しかしこれも、元スケール-(元スケール%増減値)とかやってるうちに0.0000000000001ほどの誤差が出てしまったため、一旦小数第7位あたりで丸めてからアレコレとかハラホロヒレハレしてしのいだ。
 結局resize()メソッドも中の人が必死にかけ算する仕組みだったようで。。
結局の結局、任意に設定したアンカーポイントで不具合が出たのでresize()は廃止。

たぶん、ちゃんとやれる人がやれば、きっともっと単純に済ませられるんだとは思います。
 だいじょうぶ、食べたらみんな同じ。女みんな痔。

※12.04.14 追記
 で、ちょっといいもの書いた気でいい気になってたんですが、CS4でびたいち動かない。あれおかしい。
で調べたら、CS4からはターゲットになっているメニューアクションが名前と中身の整理があったようです。
 編集>キーボードショートカット… >機能エリア>オブジェクト編集 を見ると、一番上に下図の並びが見えます。

で、例のショートカットが割り当てられているのが赤枠のほう。
 比率増加…だと…
これを、すぐ上の緑枠「サイズ増加」にショートカットを写してあげるだけで済んだっぽいです orz
 知らなかったーすいませんすいません。
5%の方も同様。1%のより少し下にあります。

しかし、例えば画像オブジェクトを選択して双方を試してみたんですが、挙動まったく変化ありません。
 なんすかこれ。なんなんすか。
なんにせよ、対象にしているメニューアクションの名前を調べて書き直してやるだけで動くはずっぽい気がしないでもないくさいので、
 近日中に修正アップします。週末なので動きわるくてご迷惑おかけしてます。
 やってみたら動きました。CS4以降は「1(5)% 比率増加(減少)」をハンドラ対象にしています。

InDesign:選択ハニーのキーボードショートカットほか


選択したいオブジェクトが他のオブジェクトに邪魔されて選択できないときー。
 自分なりのまとめ。現場の事情でCS3で検証。

Command+カチ で、マウスカーソルの指す座標上の背面オブジェクトを順送りに選択します。
 最背面の次は最前面オブジェクトにループします。
  あまりカチ が速いとカチカチ扱いになるので注意。
Command+Option+カチ で逆順。こっちはカチカチ扱いの心配なし。

 上図で、C色のポイントにマウスカーソルを置くと1、2
 M色のポイントで1、2、3の選択をループします。

…便利なのかな。いちおう自分はウホーとかゆって使ってます。
 ただ、グループオブジェクトが絡んだとたんイラッ…

次。

 上図において3が選択されている時。
Command+Option+[ で、選択が3→2→1 と移ります。
Command+Option+] で、選択が1→2→3→4 と移ります。
 メニューコマンドでは「前のオブジェクト」「次のオブジェクト」に相当するっぽい(後述)。

 これに加え、選択ツール(黒矢印)を使用している時は、
Command+Option+Shift+[ で最背面オブジェクト、
Command+Option+Shift+] で最前面オブジェクトを選択できます。
 これはメニューコマンドにはばっちり相当する物はありません(後述)。
 それ以外のツールでは、
Command+Option+Shift+[ で重なり合った背面オブジェクト、
Command+Option+Shift+] で重なり合った前面オブジェクトを選択できます。
 メニューコマンドでは「背面のオブジェクト」「前面のオブジェクト」っぽい(後述)。

つづき。

 上図。2と3がグループ。
これをダイレクト選択ツール(白矢印)で選択範囲を回してみる。
 ぶっちゃけ、5はオマケ。。
4を選択して、Command+Option+Shift+[ で背面オブジェクトを次々選択しようとすると、
 3が選択されたっきり進まなくなる。戻ることはできる。
逆に、1を選択して Command+Option+Shift+] をばしばしすると、1→2→3→4 と選択できる。
 なんのえこひいきだろう。。

(後述)×3 について
「前面のオブジェクト」、「背面のオブジェクト」、「最前面のオブジェクト」、「最背面のオブジェクト」の4つは、メニューバーから呼び出す時とコンテクストメニューから呼び出す時でちょっと違う。

いちばん上の使い回しですが
 1を選択し、マウスカーソルをC色地点に置いて右クリック→選択→最前面のオブジェクト
を実行すると2が選択される。同様の事をメニューバーから実行すると3が選択される。
 つまり、右クリック時はマウスカーソルに重なったオブジェクト群の中だけで判定され、
  メニューバーの時は選択されているオブジェクトに重なった物だけで判定されます。
何も選択していない時は、
 右クリックでマウスカーソル座標に重なる最前面(背面)オブジェクト、
 メニューバーでスプレッド上の選択可能な最前面(背面)オブジェクトが選択されます。
  なんとなく、その時の気分でコンテクストメニューとメニューバーと、どっちともなく使っていると、思った通りの動きをしてくれなくて、いつしか疎遠になってしまうのではないかと。

デフォルトのショートカットは見つかってませんが、グループオブジェクトをやっつけるための
 「内容を選択」、「コンテナを選択」も任意にショートカット割り当て可能です。
これらを組み合わせれば選択の魔術師に…
 とか思ったものの上記えこひいきのせいで結局モヤッとしてます。ちっ。

InDesign:FitTextFrame_el → m 修正

回転のかかったテキストフレームで、
 段落が左揃えでアンカーポイントが逆の右方面などの条件で、
ダイアログで「アンカーポイントを使用」を選択すると
 回転リセットの時のみ段落揃えを使用してしまうバグが見つかったので修正しました。
すごくびっくりした。下図参照。開始位置にマゼンタ文字を背面複製してあります。

まぬけですいません。
例によってScriptClip::RoomからDLしてくださいまし。