[Part I. GIMP基礎功]

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



30.8 老照片,修改過程中,須注意的 Python 語法特點

if 條件控制的敘述
Scheme code 要注意括號對齊

(set! theImage (if (= inCopy TRUE)
(car (gimp-image-duplicate inImage))
inImage)
)

Python code 要注意縮排

if (inCopy):
  theImage = pdb.gimp_image_duplicate(inImage)


Scheme code 要注意括號對齊

(if (= inCopy TRUE)
(begin  (gimp-image-clean-all theImage)
(gimp-display-new theImage)
)
)

Python code 要注意縮排
if (inCopy):
  pdb.gimp_image_clean_all(theImage)
  pdb.gimp_display_new(theImage)



RGB 顏色的指定
Scheme code 用 3 個 atom 的 list 來表示 RGB 顏色值。
'(255 255 255)
Python code 用 3 個 element 的 tuple 來表示 RGB 顏色值。
(255, 255, 255)

通常,Python code 會另外用一個變數,先指定顏色值,再將變數傳給特定的函數。

Scheme code

(script-fu-fuzzy-border theImage theLayer '(255 255 255) inBorderSize TRUE 8 FALSE 100 FALSE TRUE )

Python code

color = (255, 255, 255)
pdb.script_fu_fuzzy_border(theImage, theLayer, color, inBorderSize, TRUE, 8, FALSE, 100, FALSE, TRUE)