カテゴリ:イラストレーター > 整列基準

このエントリーをはてなブックマークに追加 Share on Tumblr Clip to Evernote 編集




◆ どんとこい発達障害!スケジュールが立てられない人の大逆転!仕事術(980円)
苦手意識を大逆転! 次々と仕事が片付きます(会員登録せずに購入可)

◆ 自分の強みをサクッと活かして商売にしちゃう教科書(980円)
会社を辞めたい!でも独立は不安…そんなあなたは必読デス(会員登録せずに購入可)

◆ スクリプト300本超が使い放題!マガジンをおすすめします。
GOROLIB DESIGNスクリプト一覧と一括ダウンロード

◆ はじめての方はこちらから
新しいスクリプトはわかったわ。じゃあどうしたらいいの?という方へ

◆ 仕事がなくなっちゃう(笑)スクリプトはオーダーメイドが最強です
いつもいつも苦労しているアノ作業。一瞬で終わると人生観かわります(ホントです^ ^)




■もう2年くらい調べてますけどいちおう暫定解決はしています…   

おつかれさまです。@gorolibです。

ツイッター上で、@nomal_fさんからのご提言について、@wideboyjpさんからご紹介いただき、ツイートしようと思ったら思いのほか長くなり、ブログ記事にしています(前置き長っ!)

(関連ツイート)

結論から言うとできません…もう2年くらい調べてます(笑)。達人の方に教えを請うたこともありますが、できないことがわかっております(整列パネルがイラストレーターにとってもプラグインらしく、仕様が公開されてないようです)

なので、現時点では

アートボードに整列のままで全部まかなっちゃう作戦

でお送りしております。

もう整列パネルの整列基準自体を変更しない(アートボード固定)という運用です。


■キーオブジェクトに整列


まず、キーオブジェクトに整列は、キーオブジェクトを指定した瞬間に切り替わるので、放置してよいでしょう。

もっとも「キーオブジェクトを選択する行為」がとても面倒なので、これを自動選択できないかは引き続き模索中です。未だにわからんのですが…(整列パネルのプラグインにもぐっていると予想中)。


■選択範囲に整列


さて「キーオブジェクトに整列」を放置してよいとすると、問題の根源は

「アートボードに整列」と「選択範囲に整列」の切り替えをどうするか

に絞られてきます。

しかし「選択範囲に整列」のことをよーく考えてみると、整列パネルの「等間隔に分布」でしか使わないことがわかります。

選択範囲に整列のままで、なんの基準もなしにポヤーんと「水平方向左に整列」などしないですからね…(必ずキーオブジェクトは指定するかと思います)。

で、困るのはアートボードに整列のままで、等間隔に分布させると、

こーんなになったり、
6399e45c

こーんなになったりするのが問題なわけですね。
d4fcd28d

なのでアートボードに整列のままで「等間隔に分布」ができればいいという結論に達しております。


■アートボード基準のままで等間隔に分布


ということで「アートボード基準のままで等間隔に分布」できればOKなのです。こちらを参照くださいませ。



……

そう、お気づきでしょうか…。あくまで暫定運用。スクリプトからアクションを呼び出したり、一瞬だけアートボードに変換したりと、まったくもってビューティフォーじゃないのです!

ことばのキレがわるいのは、

結論が出てないからですからーっ!残念!(ギター侍風)


というわけで引き続き研究対象ですので、今後ともご愛顧のほどよろしくお願いいたします^ ^


ではでは出羽の海。




お役に立ちましたらツイートお願いします!




このサイトで配布しているイラストレーターのアクションやスクリプトファイルを無断で転載・配布・販売することを固く禁じます。ご紹介いただける際は必ずURLリンクにてお願いいたします。 このサイトで配布しているイラストレーターのアクションやスクリプトファイルの使用で、ファイルの破損やアプリケーションに不具合が発生した場合でも、責任は負いかねますのでご承知おきくださいませ。自己責任での使用をお願いいたします。

© 2017 GOROLIB DESIGN
Released under the MIT license.





このエントリーをはてなブックマークに追加 Share on Tumblr Clip to Evernote 編集




◆ どんとこい発達障害!スケジュールが立てられない人の大逆転!仕事術(980円)
苦手意識を大逆転! 次々と仕事が片付きます(会員登録せずに購入可)

◆ 自分の強みをサクッと活かして商売にしちゃう教科書(980円)
会社を辞めたい!でも独立は不安…そんなあなたは必読デス(会員登録せずに購入可)

◆ スクリプト300本超が使い放題!マガジンをおすすめします。
GOROLIB DESIGNスクリプト一覧と一括ダウンロード

◆ はじめての方はこちらから
新しいスクリプトはわかったわ。じゃあどうしたらいいの?という方へ

◆ 仕事がなくなっちゃう(笑)スクリプトはオーダーメイドが最強です
いつもいつも苦労しているアノ作業。一瞬で終わると人生観かわります(ホントです^ ^)




■ついに、ついにできました!もう整列基準はアートボード固定で大丈夫です

おつかれさまです。GOROLIB DESIGNです。

ついにイラストレーターの整列基準をサクッと変更できないか問題に終止符を打ちます!


…打つところです。


打とうかな。


いやいや、とりあえずお茶ね(自信なし(笑))


発端は整列パネルの整列基準を「アートボードに整列」のままで、等間隔に分布させると、
こーんなになったり、
53bdd0d3-s

こーんなになったりするのが
aad9a584-s

イヤでイヤで仕方なかったことです。

しかし整列パネルの整列基準は、ショートカットなどでサクサクと変更することがどうしてもできず、悶々としていたのです。

では、整列基準は「アートボードに整列」のままに、選択オブジェクトを等間隔に分布できればいいのではないか?というのが今回の趣旨であり、これでこの問題に終止符を打ちたい所存なのであります。

スクリプトとアクションのセットでダウンロードしてください。

整列処理はさすがにスクリプト化できなかったので、アクションを用意しておいて、それを呼び出す形式にしました。

スクリプトを起動して、アクションを呼び出す形です。

以下、ダウンロードにてお願いいたします。

(アクション)
DistributeSpace.aia

(スクリプト)
Gorolib_DistributeSpaceHorizontal.jsx
Gorolib_DistributeSpaceVertical.jsx


アクションの登録について。
参考:イラストレーターでアクションの読み込みを行う方法

スクリプトの登録について。
参考:イラストレーターでスクリプトをサクッと起動する方法

なお、スクリプトからアクションを呼び出せるのはイラストレーターCS6以降になりますので、ご了承くださいませ…。


■選択範囲を一瞬だけアートボード化します。


では行きます。整列基準は「アートボードに整列」のままでいいんです!
47

57
13

仕組みはいつもどおりシンプル。
・選択範囲を一瞬だけアートボード化して
・その間にササッと整列し、
・何事もなかったかのように元のアートボードに戻します(笑)


ではでは出羽の海。




※コードは以下のとおりです。
━━━━━━━━━━
// Gorolib_DistributeSpaceHorizontal
// Copyright (C) 2016 GOROLIB DESIGN All Rights Reserved.
// v1.0

DOC = activeDocument;
SEL = DOC.selection;

//最前面の選択オブジェクトの位置をスタートとする
RCT = SEL[0].visibleBounds;
x1 = RCT[0];
y1 = RCT[1];
x2 = RCT[2];
y2 = RCT[3];

//選択範囲を抽出する
for ( N=0 ; N<SEL.length ; N++ ) {
    // 選択オブジェクトのサイズを取得
    BND = SEL[N].visibleBounds;

    // 最大サイズを比較抽出
    if ( BND[0] < x1 )  x1 = BND[0];
    if ( BND[1] > y1 )  y1 = BND[1];
    if ( BND[2] > x2 )  x2 = BND[2];
    if ( BND[3] < y2 )  y2 = BND[3];
}

//アクティブなアートボードを取得して保存
ABD = DOC.artboards[DOC.artboards.getActiveArtboardIndex()];
SAV = ABD.artboardRect;

//選択範囲をアートボードに変換
RCT[0]  =  x1;
RCT[1]  =  y1;
RCT[2]  =  x2;
RCT[3]  =  y2;
ABD.artboardRect = RCT;

//等間隔に分布(アクション起動)
app.doScript("DistributeSpaceHorizontal", "DistributeSpace");

//元のアートボードに戻す
ABD.artboardRect = SAV;



━━━━━━━━━━
// Gorolib_DistributeSpaceVertical
// Copyright (C) 2016 GOROLIB DESIGN All Rights Reserved.
// v1.0

DOC = activeDocument;
SEL = DOC.selection;

//最前面の選択オブジェクトの位置をスタートとする
RCT = SEL[0].visibleBounds;
x1 = RCT[0];
y1 = RCT[1];
x2 = RCT[2];
y2 = RCT[3];

//選択範囲を抽出する
for ( N=0 ; N<SEL.length ; N++ ) {
    // 選択オブジェクトのサイズを取得
    BND = SEL[N].visibleBounds;

    // 最大サイズを比較抽出
    if ( BND[0] < x1 )  x1 = BND[0];
    if ( BND[1] > y1 )  y1 = BND[1];
    if ( BND[2] > x2 )  x2 = BND[2];
    if ( BND[3] < y2 )  y2 = BND[3];
}

//アクティブなアートボードを取得して保存
ABD = DOC.artboards[DOC.artboards.getActiveArtboardIndex()];
SAV = ABD.artboardRect;

//選択範囲をアートボードに変換
RCT[0]  =  x1;
RCT[1]  =  y1;
RCT[2]  =  x2;
RCT[3]  =  y2;
ABD.artboardRect = RCT;

//等間隔に分布(アクション起動)
app.doScript("DistributeSpaceVertical", "DistributeSpace");

//元のアートボードに戻す
ABD.artboardRect = SAV;
━━━━━━━━━━



お役に立ちましたらツイートお願いします!




このサイトで配布しているイラストレーターのアクションやスクリプトファイルを無断で転載・配布・販売することを固く禁じます。ご紹介いただける際は必ずURLリンクにてお願いいたします。 このサイトで配布しているイラストレーターのアクションやスクリプトファイルの使用で、ファイルの破損やアプリケーションに不具合が発生した場合でも、責任は負いかねますのでご承知おきくださいませ。自己責任での使用をお願いいたします。

© 2017 GOROLIB DESIGN
Released under the MIT license.





このエントリーをはてなブックマークに追加 Share on Tumblr Clip to Evernote 編集




◆ どんとこい発達障害!スケジュールが立てられない人の大逆転!仕事術(980円)
苦手意識を大逆転! 次々と仕事が片付きます(会員登録せずに購入可)

◆ 自分の強みをサクッと活かして商売にしちゃう教科書(980円)
会社を辞めたい!でも独立は不安…そんなあなたは必読デス(会員登録せずに購入可)

◆ スクリプト300本超が使い放題!マガジンをおすすめします。
GOROLIB DESIGNスクリプト一覧と一括ダウンロード

◆ はじめての方はこちらから
新しいスクリプトはわかったわ。じゃあどうしたらいいの?という方へ

◆ 仕事がなくなっちゃう(笑)スクリプトはオーダーメイドが最強です
いつもいつも苦労しているアノ作業。一瞬で終わると人生観かわります(ホントです^ ^)




おつかれさまです。GOROLIB DESIGNです。

せっかく読者の方が増えたので、どなたかご存知の方がいらしたらぜひご教示いただきたいことがあります。こんな「知恵袋的な」記事は恥ずかしいものですね…(笑)


スクリプトでキーオブジェクトを自動選択する方法です。


具体的にはたった今描画したオブジェクトをキーオブジェクトにしたいのです。

先だって、アートボードサイズの四角形を描くスクリプトをご提案しましたが、

参考:アートボードサイズの四角形をゼロ秒で作るスクリプトの改良版をどうぞ

このスクリプトは四角形を選択状態のまま残します。

プラスのオフセット値で塗り足し、マイナスのオフセット値でマージンの作成(ガイドを引く)などを容易にするためです。

で、このスクリプトを起動する前に、別のオブジェクトを選択状態にしておくと、別なオブジェクトもアートボードサイズの四角形も選択状態のまま残ることがわかりました。
おお!これはいい!


これをもう一歩進めて、アートボードサイズの四角形をキーオブジェクト選択状態にできれば、いちいちアートボード基準にしなくても「アートボード基準的に」整列できそうなのです!

「アートボードに整列」とは機能的には「アートボードサイズの四角形をキーオブジェクトとした整列」です。キーオブジェクトを指定すれば整列基準は自動的に「キーオブジェクトに整列」となります。

つまり「選択基準のままですべての整列が可能に」なるのです(整列基準自体を忘れてよくなる)。

(A)こういう子たちを
(B)等間隔に並べてグループ化しておき
(C)アートボードサイズの四角形をキーオブジェクト選択状態にすれば
 
22
(D)アートボードの中央に整列が可能になるのです。

大事なのはここまで整列基準を自分で変更しなくてよいこと(選択範囲に整列のままです)。

すべてショートカットでバチバチバチ〜っと、流れるような極めて流麗なオペレーションが可能なのです。

これが理想郷であり、桃源郷であり、天竺です。物理用語で言えば


整列パネルの超ひも理論


が完成しますー!(大げさ。いつも大げさね)


もうここまでくると、自分好みのエクステンションを作成するのがベストプラクティスなのはわかっているのですが、やっぱり私にはエクステンションは荷が重いッス…。


ちなみに「オブジェクトを選択状態にする」プロパティは

selected = true;

ですが、キーオブジェクト選択状態のプロパティはわかりまへん…。


キーオブジェクト選択状態にしたまま、ダミーのスクリプトを流して、ESTKのデータブラウザにてプロパティを目をさらのようにしてチェックしましたが「それらしいtrue」は発見できない…。


ちなみにここまで???の方へ。


ここクリックすりゃいいじゃん!
34



…そう、おっしゃるとおり。でも違うんです。この「ちまちまクリック」がイヤなのです。


「ちまちまクリック」がイヤでイヤでたまらないから、どうにかなんないのー?という叫びがこのブログの谷底には流れておりますです、はい。


■ggrksと言われそうなので…


調べに調べました。

ちなみに3階ラボさんのスクリプトで「おお!」というものがあったのですが、

参考:スクリプト経由でアクションを実行すると選択解除されるのを回避する

━━━━━(引用)
連続して整列アクションを実行する場合、キーオブジェクトが解除されちゃうのはどうにもできない…
━━━━━(引用ここまで)

とのことで、キーオブジェクトとして指定されたオブジェクトは保持できないんですかねぇ。


また英語の掲示板サイトでもまさに私のような方がいらして、
 こういうのできないかいブラザー?
 むりじゃないかなブラザー!
みたいな会話(推測)がされとります…。

参考:Illustrator Scripting :: Determining KEY Object In A Selection Via JavaScript

 

スクリプトでキーオブジェクトを自動選択する方法。


どなたかご存知の方がいらしたら、どうぞご教示くださいませ…。


ではでは出羽の海。




お役に立ちましたらツイートお願いします!




このサイトで配布しているイラストレーターのアクションやスクリプトファイルを無断で転載・配布・販売することを固く禁じます。ご紹介いただける際は必ずURLリンクにてお願いいたします。 このサイトで配布しているイラストレーターのアクションやスクリプトファイルの使用で、ファイルの破損やアプリケーションに不具合が発生した場合でも、責任は負いかねますのでご承知おきくださいませ。自己責任での使用をお願いいたします。

© 2017 GOROLIB DESIGN
Released under the MIT license.





↑このページのトップヘ