之所以想開發PhotoShop的插件,來自于上學期的經歷。有個其他老師的學生老來問一些關于MFC的問題,她正在做一個合成孔徑雷達(SAR)圖象評估的軟件。作為一個電子工程系的學生,她的編程基礎當然不是很理想,所以那些GDI、窗口變換、文件操作的基本問題都可以難上她幾周的時間,看上去很可憐。象她這樣研究SAR的,機器上都裝有PhotoShop,我說你可以編寫一個PhotoShop插件,這樣就不用去了解那些Windows編程的細節,將精力主要集中在SAR算法上,否則兩年的時間怎么夠用呀,而且你注定無法成為一個Windows編程的高手,還是成為SAR專家比較靠得住。可是她的老師沒有想到過PhotoShop插件,她也從來沒有想過。我在想,有多少象她這樣的情況呢?所以,決定研究一下PhotoShop插件的編寫,也許對許多搞科研的人有用。下面介紹一下PhotoShop的插件所需要的基本工具和基本概念。
要編寫PhotoShop的插件需要PhotoShop SDK。要得到該SDK,需要到http://www.adobe.com/devnet/photoshop/下載,安裝以后包括編寫插件所需要的頭文件、資源文件、文檔、輔助工具和例子。由于PhotoShop最初是從Mac機上移植過來的,所以它的文檔和大多數例子都有Mac機的痕跡,Adobe推薦在Windows上使用Mac機的資源格式,這樣可以方便開發支持Windows和Mac的插件,這對于從小就用Windows開發的人來說夠痛苦的。而且它的文檔從5.0版本以來就沒有怎么更新,所以最新的內容許多要靠閱讀例子獲得。PhotoShop的開發主要使用C/C++語言,SDK中的所有例子都包括Visual Studio.NET 2003的工程,這點還比較方便。
PhotoShop支持的插件有以下種類:
- Automation
Automation模塊可以訪問所有Photoshop腳本事件。這些模塊都出現在Automate菜單或Help菜單。在SDK的Photoshop Actions Guide.pdf中介紹了這些插件的開發。
- Color Picker
Color Picker模塊為實現不同的顏色選擇器提供一個插件接口。
- Import
Import模塊在一個新的窗口打開圖象。Import模塊,常用于掃描儀或視頻捕捉卡接口,讀取壓縮格式或系統不支持的文件,通過Import 子菜單調用。
- Export
Export模塊輸出已存在的圖象,,常用于控制特殊打印機或以非標準壓縮格式進行文件輸出,通過Export子菜單調用。
- Extension
Extension模塊是內部模塊,接口不公開。
- Filter
Filter模塊(濾鏡)實施對當前圖像中的選定區域進行修改、潤色。這是大家最熟悉的部分,許多圖像效果便是出自這些模塊,通過Filter菜單調用。
- Format
Format模塊,也叫File Format和Image Format模塊,提供對讀寫其他圖象格式的支持。它們出現在Open..., Save As...和Save a Copy...等對話框的格式彈出菜單中。
- Parser
Parser模塊類似Import和Export模塊,提供在Photoshop和其他 (通常是矢量的)格式,如Adobe Illustrator™ or Adobe® PageMaker™之間交換數據的支持。它們的接口不公開。
- Selection
Selection模塊修改圖象中被選中的像素,也可以返回路徑或像素選擇區。這些模塊出現在Selection菜單下。
如果想讀些入門教程,可以參考以下文章
-
-
MACTECH中的英文文章:
第一部分和
第二部分,雖然是針對Mac版本寫的,但是概念清楚,比SDK的文檔還要經典。
在今后的Blog中,我會逐步介紹有關開發的內容。
posted on 2005-09-12 17:22
zealsoft 閱讀(9220)
評論(12) 編輯 收藏 引用 所屬分類:
PhotoShop SDK