Photoshop 7 SDKなしでMacOS X対応プラグインを作る方法
従来のInterfaceLibではなく、CarbonLibをリンクする。
標準ライブラリなどもCarbon対応のものにする。
PiPLリソースのデスクリプタプロパティを変更する。内容は従来のppcプラグインのもの'pwpc'とそっくり同じでよいが、プロパティタグが'pwpc'ではなく、'ppcb'である。SDKに含まれるPIPL.rを編集してやるか、普通にビルドした後でResEditのHexエディタで直接リソースを書きかえてもよい。
プログラムをCarbon対応にするため、古いToolBoxコールなどは変更する必要がある。QDGlobalsなんかを使ってたり、WIndowPtrとDialogPtrとGrafPortを同じものとみなしたたりするものは書き換えが必要。
こうしてCarbon対応にしたプラグインをプラグインフォルダに入れれば問題なく使える。ただし、Classic環境でPhotoshopを起動した場合、プラグインは読み込まれない。Photoshop7以降のプラグインは、実はパッケージであり、内部にCarbon用とClassic用の二つのプラグインが入っている。これにあわせるには、
プラグイン本体フォルダ
--プラグイン(Classic)へのエイリアス
--Contents
----PkgInfo
----MacOS
------プラグイン(Carbon)
----MacOSClassic
------プラグイン(Classic)
ってな構造のフォルダを作ってやる。PkgInfoは、内容が'8BFM8BIM'というテキストファイル(フィルタプラグインの場合)。
これだけだと、ただのフォルダなので、パッケージとして表示させるために、プラグイン本体フォルダのBundleビットを立ててやる必要がある(使用上はただのフォルダでも問題は無い)。面倒なら、適当な既存のプラグインをコピーして、「パッケージの内容を表示」して、中身を自分のプラグインに置き換えてしまえばいい。
ちなみにPhotoshopはパッケージの構造とは無関係にフォルダの中をとにかく検索して、プラグインファイルがあれば、PiPLリソースをチェックして読み込むかどうか決めているらしい。まちがってClassicプラグインのPiPLをCarbon用の物にしたところ、フィルタメニューの下に同じプラグインが二つ並んでしまった。で、Classicの方をCarbonで動いているPhotoshopから起動しようとすると、エラーになって実行できない。
「パソコン・インターネット」カテゴリの記事
- 後藤寿庵とパソコン Part6(2007.05.19)
- 多角形のアンチエイリアス描画(2006.11.28)
- 後藤寿庵とパソコン Part5(2006.10.02)
- 後藤寿庵とパソコン Part4(2006.09.26)
- 後藤寿庵とパソコン(2006.08.27)


Comments
Hi,
I am looking for a copy of PHOTOSHOP SDK 7 for WINDOWS.
I tried to request it from ADOBE
but they dont give me the LINK.
...Just the link for newer versions that
I alredy have...
Could you help me ...
Thanks in advance
Osvaldo
Posted by: OSVALDO BATALHA | 2007.01.13 at 05:58 AM