タグ:Extension 一覧

Illustrator script始めました

DTP業務向けにIllustrator scriptの開発も始めました。 Extension含めて印刷物データの効率的なデータ処理のために開発していこうかと思います。現在某古籏氏の本を参考にせっせと開発している途中です。第一回目はリンク画像を置き換える簡単なscriptから。 アートボードに配置した古い写真画像をPhotoshop等で編集した新しい画像に置き換える場合にいちいち手作業で全て置き換えると時間がかかるので古い写真画像と新しい写真画像のファイルパスを参照して置き換える処理をやりたいと思います。   リンク画像の情報はactiveDocument.placedItemsにar

Read more

Photoshop Extensionの開発34 ロード画面(エクステンション)

今回はロード画面をエクステンション上に作ります。エクステンションの場合進捗の割合を表示できませんがcssやjavascriptで自在にロード画面を作成できるので自由度が高いです。まずはロード画面のcssとhtmlから websiteを作る場合と同じ要領でhtmlの一番上の要素にロード画面のレイヤーを載せて通常は非表示。jsxの処理が動いている時にロード画面のhtmlを表示させます。cssはアニメーションで円が三つバウンドするよくあるロード画面です。 作成したロード画面。jsxの処理が開始される時にこのロード画面のdisplayをcssでblockにします。その後jsxの処理が終わった時にロード

Read more

Photoshop Extensionの開発30 エクステンションでエクセルデータを表示させる

エクセルの表がどのように読み込まれるか図を上げ直しました。読み込まれた際にはオブジェクト形式でA1,A2,A3,A4….A列の次はそのままB1,B2B3….と各セルがそのまま連続して読み込まれます。これを前回A列、B列と縦列毎に分けました。 以降B,C,Dといった各列のデータ 前回オブジェクトデータの中にMapデータとして各列を整理しました。 因みにAの次にIになっているのはそもそもオブジェクトのプロパティの列挙順が保証されていないためアルファベット順に列挙されたりするわけではないからです。配列のようにsortメソッドも存在しないのでこの辺の処理を気をつけなければなりま

Read more

Photoshop Extensionの開発29 エクステンションでエクセルデータを読み込む

エクセルの表と照らし合わせながらAdobeのソフトでレイアウトを決めたりデザインする作業というのも世の中沢山あるかと思います。というわけで今回はxlsデータをExtensionで読み込んでパネル上に表示させたいと思います。 今回xlsデータの読み込みのためにxlsxモジュールをNodeから使用することにしました。という事でまずはインストール。 インストールしましたらCEPの環境もNode.jsが使用できるようにmanifest.xml等の調整もします。 また今回サンプルのエクセルデータとしてこちらのページから第3章の国民経済計算のエクセルデータを使用しました。 まずはxlsxを読み込みましょう

Read more

Photoshop Extensionの開発27 フォルダー内のファイルをJSXから取得する

今回はjsx側からファイルを再帰的に取得したいと思います。基本的なやり方はパネル側と変わりませんが仕様がいろいろ違ってややこしいとは思います。 まずパネル側がecma2015だったのに対してこちらはecma3なので大分古臭く見えると思います。(wwww まずウインドウダイアログですがjsxですとFolder.selectDialogで呼び出して変数に選択したフォルダーのパスを代入できます。 この後にこのパスを元にファイルリストを取得してゆきます。ファイル取得関数はjsxですとフォルダーオブジェクトに専用のgetFilesメソッドが用意されているのでフォルダーパスを元にgetFilesメソッドで

Read more

Photoshop Extensionの開発26 フォルダー内のファイルを取得する

大量のデータを処理する時に必ず直面するのがフォルダー内のファイルをサブフォルダーまで遡って全て取得する方法である。今回再帰的にファイルを取得する方法をパネル側、jsx側の両方で解説する。パネル側の方はNode jsのネイティブモジュールを使用する事で簡単にファイル情報を取得できる。 おおよそよくある再帰的処理なのですが解説。まずウインドウダイアログから該当のフォルダーを選択。事前にファイルリスト用の空の配列を作成。再帰的にフォルダーからファイルを取得関数に事前にウインドウから取得したフルパスを指定(f.data[0]となっているのはウインドウから取得したデータオブジェクト型でdataプロパティ

Read more

Photoshop Extensionの開発25 オープンリンク

Extension自体クロームベースで動いている事自体は述べました。もちろんhrefでリンクを開くこともできます、しかしwebブラウザ上で開くのはともかくExtension上で開くとどうなるのか? 結果 webサイトをパネル上で開く事ができました。ただし実用性もあまりない気もします。ただしパネル上にURLのリンクを貼ってブラウザ上でリンクを開きたいといった事はあると思います。実は別途方法があります。 onClickでwindow.cep.util.openURLInDefaultBrowserを登録するだけで対象の属性をクリックした時にブラウザ上にリンクを開いて誘導する事ができます。自作のEx

Read more

Photoshop Extensionの開発24 css スクロールバー

今回はスクロールバーの見た目を変えて見ます。こちらもあまりweb上で見かけないのはクロスブラウザ問題が深刻だからです。MDNのサイトでも使用自体勧められていません。fire foxで使用出来ないのはかなり問題ですがご存知の通りCEPはクロームベースなので関係ありません。webサイトのスクロールバーをいじることじたい抵抗があるかもしれませんがExtension上ではアプリと割り切っていじっても良いでしょう。それではhtmlとcss html css overflowでリストの中身が溢れた時にscroll表示するようにしました。それではこのdiv要素のスクロールを変えてゆきます。 id listに

Read more

Photoshop Extensionの開発23 フォームデザイン2

続いてスライドバーを作ります。input type=”range”でスライドバーのフォームが用意されているのですがあまりwebサイトで見かけた事がないと思います。このスライド、各ブラウザで見えかたが大きく異なったりしてクロスブラウザ問題を考えるとかなり扱いずらいフォームだとは思います。しかしCEPはクロームベースで動いているのでこういった問題は殆ど気にしなくてもいいのがメリットです。 valueでデフォルトの数値、 minで最小値の設定、 maxで最大値の設定 stepで一ステップ事の数値を設定できます。ちなみにデフォルトの状態が以下になります。 見えかたはクロームに依

Read more

Photoshop Extensionの開発22 フォームデザイン1

topcoatのライブラリーを使用すれば自作でcssを用意しなくても便利なフォームデザインが用意されているのは前回述べた通りです。それでも自前でデザインしてみたい場合のカスタマイズについて述べます。ちなみにtopcoatを使用ずる場合はdisabled時やチェック時のフォームの反応やクリックした時の反応等全て事前に用意されているのでこれら全て自前でカスタマイズするとなるとそれなりの労力になる事は覚悟してください。 まずhtml チェックボックスをふた通り用意しました。それぞれ大きくカスタマイズするのでlabel要素の中にdivも一緒に挟んでいます。labelで一緒に挟む事によりdivをクリック

Read more