李逸軻
(安徽中澳科技職業(yè)學(xué)院 信息藝術(shù)系,合肥 230031)
Photoshop(以下簡稱Ps)對象結(jié)構(gòu)模型是層級結(jié)構(gòu),最頂層是Application.Ps中提供DOM接口,允許用戶以腳本的形式訪問各文檔、新建文件、新建圖層、替換前景色.Ps界面的大部分功能都可以通過DOM獲得.如圖1、圖2所示.
圖1 Ps對象模型結(jié)構(gòu)
圖2 對象模型說明
Document:用于對Ps中任意已打開文檔的編輯管理.包括工作畫布裁切、當前文檔旋轉(zhuǎn)、更改畫布或圖像大小,或者在當前圖像之間互相復(fù)制粘貼.[1]
Layer:起源于動畫,原本是動畫繪制中的透明膠片,后來被Ps、CDR等程序借用,它允許用戶在不干擾其他元素的情況下處理圖像的某一個元素.主要用于圖層的新建、復(fù)制、標色、 柵格化以及圖層合并.Layer包括Text Item、Art Layers,即文本圖層和藝術(shù)圖層,藝術(shù)圖層是文檔中的一個層類,文本圖層是一種特殊類型的藝術(shù)圖層.在Ps中,圖像通常由多個層組成,用戶可以通過更改層的順序和屬性來更改圖像的組成.
Layer set:可以理解為管理圖層的文件夾.一個圖層組可以包括多個圖層和圖層組,即在Ps對象模型中,一個層集可以調(diào)用另一個層集.
Channel:主要用于區(qū)分、存儲圖像的色彩信息.借助于通道,可以實現(xiàn)選區(qū)的創(chuàng)建、存儲,摳圖等功能.通道中顯示的圖像均為灰度圖像,在通道的灰度圖像中,顏色的深淺表示該通道該區(qū)域色彩的量.如圖3所示,左邊是原圖,右邊是藍色通道.在藍色通道的灰度圖中,紅圈部分白色較多,說明圖片該區(qū)域藍色成分較多;反之,深色區(qū)域表示圖片該區(qū)域藍色較少.
圖3 通道示意圖
不同的色彩模式對應(yīng)不同的通道數(shù)量.例如CMYK圖形有五個通道,整個圖像占有一個復(fù)合通道,CMYK四色各占一個單色通道.除了RGB、Lab各色彩模型對應(yīng)的通道,ps中還提供阿爾法通道、矢量通道、專色通道.[2]
Selection:主要用來選擇當前工作圖層中要使用的圖像區(qū)域.包括透明選區(qū)、半透明選區(qū)、 矢量選區(qū).選區(qū)是ps的核心功能,ps的主要目的,就是為了創(chuàng)建一個合適的選區(qū).已創(chuàng)建的選區(qū)可以以阿爾法通道的形式存儲在通道中.[3]
History State:主要用于記錄用戶的操作過程.用戶對圖像的每次操作,都會被記錄到歷史記錄緩存文件中.用戶可以更改History State緩存文件的位置,以避免緩存文件過大超出程序所在硬盤的容量.
Path Item:該模塊中包含路徑、矢量繪圖的信息.Sub Path Item主要是子形狀、子路徑,Path Point主要指錨點,包括錨點手柄、錨點坐標等信息.
可以看出,Ps對象模型基本包含了設(shè)計師日常操作的所有功能,這也是Ps腳本撰寫的基礎(chǔ).
Ps動作是多個相關(guān)聯(lián)的預(yù)設(shè)腳本操作的集合,通過Ps動作,實現(xiàn)當前非人工的機械性操作的記錄,當下次遇到相同工作時,僅需點擊該動作的播放按鈕,所記錄的操作將被自動重復(fù)執(zhí)行.對于較重要、使用頻率較高的動作,可以通過動作面板將動作導(dǎo)出,存儲為Atn格式的文件,以備保存或者和其他用戶共享.在有些情況下,可以將動作設(shè)置為條件動作,對圖片進行色彩模式篩選,如圖4所示.
圖4 條件模式
Ps動作雖然能記錄用戶的整個操作流程,但執(zhí)行動作時,僅能完成單個任務(wù).Ps的批處理功能,可以在包含多個子文件、子文件夾的文件夾上執(zhí)行同一個動作,從而實現(xiàn)海量圖片的快速批量自動化處理[4].除了原動作中所包含命令外,批處理可對文件重新批命名.但批處理不能獨立設(shè)定,必須依托已有動作才能執(zhí)行.批處理操作界面如圖5所示.
圖5 批處理操作界面
Ps腳本,即Photoshop Scripting.分別是Mac平臺上的Apple Script、Win平臺上的Visual Bas Script和跨平臺的Java Script[5].一般使用Adobe公司的腳本編輯器 ExtendScript Toolkit編輯,保存為“.jsx”或“.js”格式文件.在蘋果系統(tǒng)中,兩種格式的腳本功能是一樣的.在微軟系統(tǒng)中,“.jsx”后綴名更好,可使用ExtendScript引擎解釋腳本[3].用戶也可借助記事本直接編寫腳本.
Ps腳本比動作更具靈活性和邏輯性.通過Ps腳本,可以把諸多命令操作、參數(shù)設(shè)置組合在一起,快速完成一些較復(fù)雜的機械性重復(fù)任務(wù),還可用循環(huán)、分子等語句完成更為復(fù)雜的運算功能,或者執(zhí)行涉及多個應(yīng)用程序的操作.比如可以同時控制Ps和Illustrator.
用戶可以通過腳本添加條件,使腳本根據(jù)當前條件自動做出“決定”.比如:用戶可以編寫一個腳本來決定要添加哪個顏色邊框,具體取決于圖像中所選區(qū)域的大?。骸叭绻x區(qū)域小于30 mm×40 mm,添加綠色邊界,否則添加紅色邊框.”.
把編輯好的腳本保存到Ps安裝目錄∥Presets∥Scripts.使用腳本時,可以直接打開Ps,選擇文件→腳本→執(zhí)行腳本[6],或者在腳本事件管理器中指定一個事件,觸發(fā)腳本運行,如圖6所示.最后,還可以在錄制動作時,將腳本嵌入到動作中,通過Ps批處理執(zhí)行,這也是最常用的一種操作.
圖6 腳本事件管理器
以我國著名書籍設(shè)計師呂敬人先生作品《梅蘭芳全傳》為例,書籍向左、右翻,書口上能分別顯示出梅蘭芳先生的戲服照和生活照.該書共636頁,開本為16開(260毫米*185毫米),厚度34毫米,書口翻折顯露寬度85毫米左右.如圖7所示,當書籍翻折時,書籍切口圖像是由奇數(shù)頁或偶數(shù)頁最右邊(左邊)顯露出來的窄邊拼接顯現(xiàn)的,要實現(xiàn)設(shè)計效果,我們需要將戲服照和生活照分別切片,逐個放置在書籍的奇數(shù)頁和偶數(shù)頁的最邊上.
圖7 書籍設(shè)計作品《梅蘭芳全傳》
首選我們將戲服照和生活照的照片裁剪為260毫米*85毫米,每頁放置的圖片寬度設(shè)定為3毫米.為更精確計算,將毫米折算為像素.在分辨率為300 dpi情況下,260毫米=3 120像素,85毫米=1 020像素,3毫米=36像素.全書共636頁,奇偶頁占一半,即318頁.
從最左邊裁切第一張36像素寬的切片,從剩余部分依次等分裁切317張.(1020-36)/(318-1)≈3.1像素.即后續(xù)每張圖需要依次向右移動3.1像素.如圖8所示.
圖8 裁切示意
在戲服照圖片最左側(cè)設(shè)定3 120像素*36像素的選區(qū),腳本如下:
var region = [[0,0],[36,0],[36,3120],[0,3120]];
var type = SelectionType.REPLACE;
var feather = 0;
var antiAlias = true;
app.activeDocument.selection.select(region,type,feather,antiAlias);
復(fù)制當前所選區(qū)域,新建260毫米*30毫米、分辨率與“戲服照”相同的文件A,將從“戲服照”圖片中復(fù)制的圖片部分粘入文件A,另存為jpeg圖片,命名為A-1,關(guān)閉文件A.由此,裁切出第一個圖片切片.由于第一張切片不涉及位移問題,第一片切片的操作不錄入動作.后續(xù)需要依次將選取向右移動3.1像素,逐個裁切出所有切片.
此時打開動作面板,新建動作一,開始記錄:選擇“戲服照”圖片,保持選區(qū)不動,打開腳本二,使選區(qū)向右偏移3.1像素.腳本如下:
var region = [[0,0],[36,0],[36,3120],[0,3120]];
var type = SelectionType.REPLACE;
var feather = 0;
var antiAlias = true;
app.activeDocument.selection.select(region,type,feather,antiAlias);
var deltaX = 3.1;
var deltaY = 0;
app.activeDocument.selection.translateBoundary(deltaX,deltaY);
復(fù)制當前所選區(qū)域,基于剪切板新建260毫米*30毫米、分辨率與“戲服照”相同的文件A,執(zhí)行粘貼命令,將從“戲服照”圖片中復(fù)制的圖片部分粘入文件A,合并圖層,另存為Jpeg圖片,命名為A-2,關(guān)閉文件A,關(guān)閉動作記錄.通過上述操作,完整地裁切出一個圖片切片,且圖片A-2較A-1向右位移3.1像素.以上為一個裁切循環(huán).
保持“戲服照”圖片中選區(qū)不動,打開Ps批處理面板,選擇動作一,選取原圖片所在文件夾,設(shè)定輸出文件夾,設(shè)定重命名規(guī)則,點擊確定.Ps即可按照動作一中所包含腳本和設(shè)定自動執(zhí)行,實現(xiàn)圖像切片的自動裁切.如圖9所示。
圖9 部分圖片切片
通過上述操作,我們可以得到兩份各318張的圖片切片,分別放置在兩個文件夾內(nèi),文件夾命名為奇數(shù)切片和偶數(shù)切片.所有切片按阿拉伯數(shù)字順序命名.下一步,需要先在書稿上確定切片粘貼的位置,然后將切片逐一放置到每張書頁的最右邊(左邊),即定位粘貼.
將排版好的書稿的奇、偶數(shù)頁分別導(dǎo)出為Jpeg格式,放置在兩個文件夾內(nèi),文件夾命名為奇數(shù)頁和偶數(shù)頁.所有書稿圖片按阿拉伯數(shù)字順序命名.打開Ps動作面板,新建動作二,開始記錄:打開書稿奇數(shù)頁第一張,在圖片最左邊創(chuàng)建3 120像素*36像素的選區(qū):var region=[[2184,0],[2220,0],[2220,3120],[2184,3120]],利用選區(qū)確定切片粘貼位置,然后打開奇數(shù)切片第一張,全選>復(fù)制,返回到書稿奇數(shù)頁第一張,保持選區(qū)不動,粘貼,保存輸出,停止動作記錄.由此,完成了一張切片在書稿上的定位粘貼.再通過Ps批處理,即可實現(xiàn)切片在正文書頁的自動化粘貼.
Ps功能強大,屬于半開源軟件,允許用戶自己添加插件.尤其對重復(fù)性機械操作,均可以通過Ps動作、腳本來實現(xiàn).文章對Ps對象模型結(jié)構(gòu)以及各模塊功能進行研究,對Ps動作、腳本的特點做簡要分析.
結(jié)合書籍切口制作,解析任務(wù)的動作操作的邏輯關(guān)系,對其各項操作進行預(yù)估,結(jié)合Ps腳本、動作等自動處理功能,實現(xiàn)對圖片的自動平移順序切片,替代傳統(tǒng)的手工重復(fù)切片操作,大幅度減少了重復(fù)勞動,提高了工作效率和工作質(zhì)量[7],也使得ps的操作應(yīng)用更具科學(xué)性和邏輯性.
但目前項目所研究的自動批處理方法,并不是所有情況都能應(yīng)用,尤其是對于多種格式并存的圖像批處理,所以還需進一步研究更全面的Ps圖像批處理方法,以滿足更多的任務(wù)需求.另外,Ps平時絕大部分應(yīng)用在藝術(shù)設(shè)計領(lǐng)域,而Ps腳本、動作涉及較多編程知識.藝術(shù)設(shè)計從業(yè)人員幾乎不涉及代碼的學(xué)習(xí);編程行業(yè)的從業(yè)人員缺乏色彩、繪畫造型訓(xùn)練.如何將兩者結(jié)合起來,需要后續(xù)進一步探索.