• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:イラレのJSXで分割・拡張)

イラレのJSXで分割・拡張についての質問

このQ&Aのポイント
  • illustratorCS3 WindowsXPのスクリプトで文字のアウトライン処理をする前に「オブジェクト>分割・拡張」の処理を全オブジェクトにしたいがうまくいかない。
  • ExtendsScriptToolkitの精度が思わしくないため、ヘルプに記載されているクラス名やオブジェクトメソッドが間違っている可能性がある。
  • GroupItemをaddする方法も試したがうまくいかなかった。

質問者が選んだベストアンサー

  • ベストアンサー
  • kawacchi
  • ベストアンサー率83% (26/31)
回答No.1

普通のパスなどはPluginItemではないので、doc.pluginItems.lengthが0でfor文が1回も実行されていないということも考えられますが・・・。 item.tracing.expandTracing()は「オブジェクト>ライブトレース>拡張」にあたるので、トレースでできたオブジェクト以外には処理が行われないようです。 テストしてみましたが、同じPluginItemであっても複合シェイプは処理が行われずエラーもなし、トレースされたオブジェクトは拡張処理されました。 「オブジェクト>分割・拡張」にあたるものは、探してみたんですがどうやら無いようです。 スクリプトからアクションを呼び出せばと思ったんですが、IllustratorのJavaScriptではスクリプトからアクションが呼び出せないそうで・・・。VBScriptならできるそうですが、残念ながら詳しくないのでわかりません。

H240S18B73
質問者

お礼

回答ありがとうございます これじゃなかったらどれなんだと思ってたんですが やっぱりこれってライブトレースのことだったんですね… 文字のアウトラインはエンベロープの中身には適用されなかったり スタイルが変わってしまったりするので常に分割拡張してから するようにしたかったのですが僕もVBのほうは全然なので いまのところは作業者にアウトライン前に 分割拡張を徹底するようにお願いする事にします もしかしたら解決策もってるひとがいないかと期待して 締め切りはもうちょっとまってみます スイマセン

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 質問

    インスタンス化したboxクラスのtable()メソッドを呼び出し、引数にiを渡す 戻り値としてArrayListオブジェクトで受け取る というのはどのように表すのでしょうか?

  • オブジェクトを配列として扱いたい

    Java(オブジェクト指向)を始めて数日の者です。 LinkedListを利用し、インスタンス化したオブジェクトをListに入れて 扱えるようにしたいと考えています。 具体的には LinkedList<クラス名> array = new LinkedList<クラス名>(); クラス名 object1 = new クラス名(); -object1の処理- array.add(object1); -object1の処理- array.add(object1); -object1の処理- array.add(object1); このようにして、object1を配列で管理するイメージです。 object1の処理結果は、毎度変わっています。 しかしこれですと、最後のobject1の処理の内容がすべてのarray(i)に入ってしまいます。 要は、array(i)は全て、同じobject1を参照しているだけ。 object1の変更結果がarray(i)に入っていくというイメージでは無い、ということでしょうか? また、この他でインスタンス化したものを配列で管理できるような方法がございましたら、ご教授いただけると幸いです。m(_ _)m 動的に配列の要素数を変更(要素が追加)ができるようにしたいのです。

    • ベストアンサー
    • Java
  • モジュールの概念・リファレンスとオブジェクト

    {  package TEST;  new { bless {}; }  method {} } 最も簡単な(何もしない)クラスを作ってみたのですが、 $obj = new TEST; とした場合、この戻り値は『自分がどのパッケージに属しているか知っているリファレンス』である、と理解しました。 ここで考えたのですが、パッケージ外で $obj->method(); とした場合は『クラスのメソッド』を呼べると思うのですが 『自分がどのパッケージに属しているか知っているリファレンス』=要するにリファレンス に対してアロー演算子をつけると、クラスオブジェクトを表すようになるという概念が理解できません。 $obj->method(); は リファレンス->関数 という事になり、意味がわかりません。 挙動はわかるのですが、内部的にどのように処理しているのかをご存知の方、もしくはそれに関して言及している資料などご存知の方が居ましたら教えていただけないでしょうか。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • オフィス2010 今まで関数だったのがメソッドに

    オフィス2003からオフィス2010にしたのですが vbaのオブジェクトブラウザを見ていると、今までヘルプには関数として書かれていたのもが メソッドになってるのですが、変わったのですか? たとえば、WorksheetFunctionクラスのCountなんて、もろ関数だと思うのですが、 F1を押してヘルプを見ると「WorksheetFunction.Count メソッド」となっています。 関数とメソッドは同じ意味なのでしょうか?

  • Stringクラスのlengthメソッドについて

    こんにちは、Stringクラスのlengthメソッドについて質問させてください。 今まで配列のlengthは、宣言時に長さが決定するからメソッドではなく、finalフィールドで十分。 ArrayListだとかは長さが変わるからメソッドという意識を持っていました。 (カプセル化の概念とも関わりますが) 先日その話しをしていたら、「でも文字列(Stringオブジェクト)の長さも不変だよね。」と言われました。 確かに文字列の長さは不変なのに、長さの取得にはメソッドを使っています。 言語仕様として一貫性を持たせるなら、配列もlengthメソッドにするか、文字列をlengthフィールドにしたほうが綺麗だと思うんです。 Stringクラスのソースコードを見ていたら、文字列の長さは内部的に private int count; と宣言されていました。 そして、lengthメソッドは return count; しているだけでした。 ただ、このcountフィールドに値を代入しているのはコンストラクタ内だけだったので、 public final int length; とすれば、良かったのでは?と思いました。 この考えについて、 それは間違っている、とか歴史的な背景などご存知でしたらご教授ください。 よろしくお願致します。

  • プログラミングで困っています。

    メインメソッドで、 MyArray array = new MyArray(10); // サイズ10の配列をつくります。 を実行したとします。クラス MyArrayは配列にObjectを挿入、削除できるメソッド(add()とdelete())、+その他を追加したものです。 MyArrayクラスの中から、arrayを他のクラスに返すメソッドを作ることはできるんでしょうか?arrayの配列だけを返すのでなくて、MyArrayであるarrayそのものを返したいのですが、どうすればいいでしょうか。 理由は、他のメソッドから、arrayの配列に行われたadd()とdelete()の回数をモニターする必要があるからです。 *add()とdelete()には、呼ばれるたびに、int counterを1ずつ増やすようにしています。counterの数の変化によってarray配列が変化したかどうかモニターするわけです。

  • どこがエラーか確認してください…

    プログラムを作ったのですが、さまざまなエラーが出てしまいます。 与えた引数を数字と文字にわけるというプログラムです。 public class Selection { private static final char[] nch = { '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' };//0から9までの数字をchar型配列要素として定義 public static String numbersonly(String inputstr) { StringBuffer bfn = new StringBuffer(); for (int i = 0 ; i < inputstr.length(); i++) { for (int j = 0;j < nch.length() ; j++) { if(inputstr.charAt(i) == nch[j]) bfn.append(inputstr.substring(i)); //bfnにinsputstrのi番目の文字を付け足す } } return; bfn.toString(); //bfnをstring型に変えて戻り値 } //numbersonlyメソッドの場合と同様に以下も補う public static String lettersonly(String inputstr) { StringBuffer bfn =new StringBuffer(); boolean let; for (int i = 0; i < inputstr.length(); i++) { let = true; for(int j = 0; j < nch.length(); j++) { if(inputstr.charAt(i) == nch[j]) let =false; } if (let)bfn.append(inputstr.substring(i)); } return;bfn.toString(); } } はじめのchar型配列要素として定義するところでシンボルを解決できません、となっているので、そのほかのnchを使う部分(lengthメソッド、戻り値)にも影響が出ているのか、jのlengthメソッドもどちらともシンボル解決できず、それぞれreturnでは戻り値がありません、となります。

    • ベストアンサー
    • Java
  • Javaのコネクションやストリームについて

    Javaのコネクションやストリームを別クラスやメソッドに渡したときの、close処理について質問です。 例えば、あるクラスで取得したDBコネクションオブジェクトを、別のクラスやメソッドに渡した場合、close処理はどこで行うのが適切でしょうか? 呼び出し元で行うのが良いのか、呼び出し先で行うのが良いのか、または、両方で行うべきなのか。 どなたかご教授願います。

    • ベストアンサー
    • Java
  • 戻り値を使う問題について

    <問題> 以下のクラスを作成せよ。 「mainメソッド」 1)Aisatuクラスのオブジェクト作成。 2)Aisatuクラスのohayouメソッドを呼び出し、  戻り値を取得して表示する。 3)Aisatuクラスのkonnitiwaメソッドを呼び出し、  戻り値を取得して表示する。 4)Aisatuクラスのkonbanwaメソッドを呼び出し、  戻り値を取得して表示する。 「Aisatuメソッド」 ohayouメソッド ・「おはようございます」という文字列を戻り値とする。 ・「こんにちは」という文字列を戻り値とする。 ・「こんばんは」という文字列を戻り値とする。 <実行結果> おはようございます こんにちは こんばんは ************************************************************ 上記の質問についてのプログラムなんですが、いまいちクラスとか メソッドとかよく分からなくて、ちゃんと実行できません。 コンパイルは通るのですが、実行しようとすると、 java.lang.NoSuchMethodError のエラーが出てしまいます。 メソッドが見つからないということでしょうか? 間違っているところを教えて下さい。 よろしくお願いします。 class Aisatu { private String oha; private String koni; private String koba; public String aiOhayou(String o) { oha = o; return oha; } public String aiKonnitiwa(String n) { koni = n; return koni; } public String aiKonbanwa(String b) { koba = b; return koba; } } class Greet02 { public static void main(String args[]) { Aisatu as = new Aisatu(); as.aiOhayou("おはようございます"); String ohayou = as.aiOhayou("おはようございます"); System.out.println(ohayou); as.aiKonnitiwa("こんにちは"); String konnitiwa = as.aiKonnitiwa("こんにちは"); System.out.println(konnitiwa); as.aiKonbanwa("こんばんは"); String konbanwa = as.aiKonbanwa("こんばんは"); System.out.println(konbanwa); } }

    • ベストアンサー
    • Java
  • IteratorとConcurrentModificationException

    IteratorにConcurrentModificationExceptionをthrowさせるやり方がわかりません。 配列に数字を挿入、削除するクラスをつくりました。 MyArrayにあるメソッド、変数 int [] array int mod // 挿入、削除の合計回数 初期値は0 add(int n) // nをarrayに挿入します delete() // 一番うしろの数字を削除します getMod() // modを返します iterator() // new ArrayIterator (array.length, mod) を返します。 modはadd()とdelete()が呼ばれるたびに1ずつ増えていくようにしています。ArrayIteratorはIteratorをimplementsしたクラスです。 <メインメソッドのコード> MyArray a = new MyArray (10); // サイズが10の配列をつくります a.add(1); a.add(2); a.add(3); a.add(4); Iterator it = a.iterator(); it.next(); // 配列の一番最初の数字を返します。 (i.e. 1) a.add(5); // 5を配列に挿入します。 // Iterator以外のメソッドで配列を変えてしまったので、 // ConcurrentModificationExceptionをthrowさせたいんです。 it.next(); // ここでConcurrentModificationExceptionをthrowしてくれません add()、 delete()、 getMod()はそのままにして全く変えずに、これができる方法ありますか?(その三つのメソッド以外は書きかえれます)it.next()だけでなく、it.hasNext()、it.remove()でも同じようにConcurrentModificationExceptionがthrowされるようにしたいのですが・・・。