「電波とどいた?」
2011/02版 その2

2011/02/17 (木)

Photoshopプラグイン(レイヤ対応) (PSD, Adobe)

_ レイヤデータ対応かけた PhotoShop Format Plugin のサンプルです。 ダイアログとオプション対応はまたそのうちに。

_ レイヤ情報およびそれぞれのレイヤをPNG化したものをZIPアーカイブに入れ込むような形式として作ってみました。 必要な処理の流れはそれなりに整理してまとめたので、俺々フォーマット用のプラグインとか作る場合には わりと参考になるんじゃないかと思います。ついでに統合画像要の tlg のプラグインもメモリ破壊バグとか修正していれてあります。 さらにおまけで tlg の susie プラグインも入ってます。しかし、世の中にレイヤ保存してるプラグインは全然存在してないのね……。 レイヤ対応してたらソースに必ず含まれているであろうキーワード "FormatLayerSupport" でぐぐると 一つだけ発見できました。あとはAdobeフォーラムのどうやったら保存できるんだよ記事がちらほら。

_ ↑のソースも参考にしながら試行錯誤の末に保存成功したわけですが、 これ仕様バグだろ的挙動が一つ。レイヤのセーブ時にはキャンバス外の領域も転送して保存できるのに、 レイヤのロード時には、同じ指定で転送してもキャンバスサイズでトリミングされて画像が切れる。 動作が対称になってないとか意味不明すぎる。これだとセーブしてまたセーブしたらデータが変わる じゃないか。ちなみにエラーにはなりません。作ったやつここにきて正座しなさい。

_ もしかしたらなんか使い方悪いのかなぁと思ったんだけど、 Adobe が配布してる FXG 形式のプラグインでも、 同様に切れるのでこれで仕様っぽい orz。 うーん、必ず画面内におさめるようにしてチャンネルと情報と組み合わせて使うとか運用でカバーですかねぇ。




メールはこちらへ...[わたなべごう (go @(at) denpa .(dot) org)]

この日記は、GNSを使用して作成されています。