Just Diary

Follow me

カテゴリー:Adobe一般 一覧

Illustratorのscriptでactionを生成する。

Adobe JSXが古くて動作が遅いというのは皆さんご存知の通りですがIllustrator上でscriptを使用して沢山のアイテムを動かす、調べるといった処理をとにかく重くなりがちです。簡単なポスターならまだしも実際に仕事でIllustratorを触ってる方はどのような職種でも何重にも重なったレイヤーや百に近いアイテムのドキュメントは珍しく無いでしょう。こういった複雑なデータの版下データを面付けするとか幾つも配置させるとなるとscriptの出番、となるのですがこういった複雑なデータを扱うのはとにかく苦手で、ただ移動させるだけでもデータが複雑ですとかなり時間がかかります。さらにクリッピングマス

Read more

cep.fs.showOpenDialogの使用変更?

こちらの記事で紹介した通りAdobe cepはファイルやフォルダーをダイアログで選択できるメソッドを持っている。それでここで紹介した通りにやればファイルパスが取得できるのだがCC2019とCC2020で使用が変わった? 取得したパスにいつの間にか頭にfile:///とスキームが付くように変わってるじゃないか。デバッグしててエラーが出てなんかおかしいと思った。ちなみにこのままだとpathだと認識されないのでNode.jsのfs.statSyncで読み込ませてもエラーを返します。なのでpathのstringとしてパースする必要があります。やり方は至極簡単。 ネイティブモジュールのurlからパースす

Read more

2020年9月版 Adobe CEPの開発環境

Adobe JSXと違ってCEP周りの環境は日々進化しています。既に3,4年前に比べて開発環境が大きく変わったのでここに私の開発環境を書いておきます。 テキストエディター 今から始めるならVSCode一択でしょうか。Extend script debuggerのプラグインでJSXのデバッグもできます。CC Extension BuilderでCEPの雛形も作ってくれます。Adobe bracketsは一時期人気がありましたが今はどうでしょうか?だんだん古い情報しか検索に引っかからないようになりました。 デバッグ 2020年上旬あたりに突然Google chromeでCEPでのデバッグが出来なく

Read more

初心者向けAdobe JSX、Javascript入門これからjsxを始める前の話

JavaScirptでAdobeのアプリを自動化したい方向けの入門記事です。入門と言っても開発のやり方とか、文法の話ではなくそもそもJavaScriptってなんじゃらほいという話です。実際scriptを書いているとあのコードどうやって書くの?とかあの関数どうやって書くんだっけ?という壁にぶつかった時にインターネットで調べるになるはずです。しかしJavaScriptそのものの種類とか理解してないと検索やりかもわからなければどう言った種類の本を買えばいいのかというそもそもコード以前の壁にぶつかるからです。実際こう言った経験を自分自身が何度もぶつかったのでどのような方がこのサイトを見てるかわかりませ

Read more

Node jsで始めるfilesystem10 非同期ファイル操作

今回ファイル操作を非同期で行ってみます。 Node.jsでの非同期ファイル操作メソッドは同期ファイル操作のメソッドと違って結果をコールバックで受け取ります。それではフォルダーからファイル一覧を取得するfs.readdirメソッドの例から見てみます。 これは何回も見てきたように同期的にファイル一覧を取得するやり方です。これを非同期でやる場合は。 コールバックで結果を受け取ります。エラーが起きた場合はエラーもコールバックで受け取るのが通例です。これをPromiseで結果を受け取ってasync awaitを使えば見た目が同期処理のようなコードを書き込めます。 しかしreaddir他、mkdirやre

Read more

Export images

一年以上前に開発したExtension Export Images をアップグレードしました。今回はIllustratorと連動させてPhotoshopで開いている画像をIllustrator上の画像と置き換えたり逆にIllustator上で編集しているデータに配置されている画像をPhotoshopで開いて加工したりできます。 こちらはPhotoshop上で開いたときのパネル。 基本は前回と変わらずPhotoshopで開いている画像をまとめていろんな形式のファイルで保存できます。tiffやeps等アクションでまとめて保存できない形式の画像も保存できるので画像の拡張子の変換なんかにも使えます。以

Read more

Photoshop Extensionの開発37 PhotoshopのイベントをCEPで管理する

前回の記事ではJSXでのイベントに触れました。JSX上で設定した場合ぱっと見イベントの設定がわからないので思わぬ場面で動く場合もあります、というわけでここはExtensionパネルの出番です。イベントのオン、オフをパネル上で表示させればユーザー側にイベントの可否を視覚的に表示することが可能です。やはりhtmlとcssでインターフェイスを作れるのは強い。 CEPでのイベントですがDOMと同じようにイベントを追加してイベント発火時にコールバック関数が動く。そして何かしらの処理がPhotoshopに走るという具合なのですがイベントIDをjsxから取得したり固有のイベントオブジェクトを生成する必要があ

Read more

Photoshop Extensionの開発36 Photoshop上のイベント

久しぶりのPhotoshopCEPの記事です。 Photoshop上ではイベントをscriptで管理して何かしらの処理を発火させることができます。Photoshopで画像を編集している最中なんかに自動的に指定した処理を発火させることが可能です。レイヤーを追加したら自動的にレイヤー名をリネームするとかトリミング時に画像サイズをアラートで表示する等実装するとよりアプリらしさが増します。 但し今まで解説したようにイベントと言ってもいくつかの種類があって大まかに分けると DOM event CEPのパネル上で起こした動作によって発火するイベント。ブラウザ上で発火するイベントと同じです。clickイベン

Read more

Illustrator ,Photoshop Extensionの開発35

デバッグ周りが大変だったりいまだにecma3しか使用できないadobe jsxです。今回cep上でやりとりする時の細い開発情報をさらに載せます。 何度か触れていますがjsx単体で動かす場合は外部ファイルをincludeで読み込むことができるのである程度オブジェクト、関数をファイル事に分けられて見やすくできますがcepからアクセスする場合はこのincludeが使用できません。規模が大きくなるにつれてコードの量も大きくなってくるので厄介です。実はこの外部ファイル読み込みですがcep側のscriptで読み込むことが可能です。やり方は簡単。 func.jsがjsxのフォルダに入っていると仮定してcep

Read more

CEP上で画面を切り替えるインタフェースを作る

CEPにいろんな機能を盛り込む時にモードや画面の切り替えを行いたい時があると思います。機能が増えて行くにつれて色々パーツを埋め込みたくなりつつもパネル自体の大きさはあまり大きくしたくない時などがあります。 今回はこんな感じの画面を切り替えるCSSを作りましょう。CEP上ではウェブサイトと違って基本的にhtmlはindex.htmlのみ使用して他のhtmlファイルにリンクで飛ぶようなやり方はしないので二つ分の画面を一つのhtmlにまとめます。それではまずは htmlから <div class=”mainForm box form“>と<div class

Read more

最近のコメント

Other link

最近のコメント

Close