[Part I. GIMP基礎功]

[Part II. 一種效果的誕生]
[Part III. Script-Fu的秘密]



13.1 Script-Fu 新增影像物件、圖層物件

Script-Fu 訊息視窗
  • 執行[影像] / 濾鏡 / Script-Fu / Console,會出現 Script-Fu 訊息視窗,其下方的文字框內,可輸入欲執行的命令。

  • 上圖展示了Script-Fu 訊息視窗,目前尚未輸入任何指令。


新增影像物件
  • 新增 400 x 300 的影像
(gimp-image-new 400 300 RGB)

  • 這樣是錯誤的,這樣無法指派物件
(img (car (gimp-image-new 400 300 RGB)))

  • 新增 400 x 300 的影像,將影像物件指派給變數 img
(define img (car (gimp-image-new 400 300 RGB)))

  • 新增影像視窗,顯示 img 影像物件
(gimp-display-new img)

  • 載入 PNG 影像檔,並將物件指派給變數 img
(define img (car (file-png-load 1 "~/test.png" "")))

  • 載入 JPEG 影像檔,並將物件指派給變數 img
(define img (car (gimp-file-load 1 "~/test.jpg" "")))

  • 將影像物件 img 儲存在 JPEG 影像檔
(define drw (car (gimp-image-active-drawable img)))
(gimp-file-save 1 img drw "~/test.jpg" "")



將圖層物件加入影像物件,才能在圖層上作畫
  • 若不包含新增顯示視窗 gimp-display-new ,要在圖層上作畫,前置作業至少要三個步驟。

(define width 256)
(define height 256)

;Step 1. 新增影像物件
(define img (car (gimp-image-new width height RGB)))

;Step 2. 新增圖層物件
(define layer-one (car (gimp-layer-new img width height RGB-IMAGE "layer 1" 100 NORMAL-MODE)))

;Step 3. 將圖層物件加入影像物件
(gimp-image-add-layer img layer-one 0)

(gimp-display-new img)

  • 啟動 GIMP Script-fu Console
  • 將上面的程式碼,全部選取、複製、再貼入 Script-fu Console 文字框,按下 Enter 。
  • 過一會,就會看到一個影像視窗,內有「空無一物」的圖層。
  • 別小看「空無一物」的圖層,要作畫、填圖、著色,都要先有它才行得通。