[Part I. GIMP基礎功]

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

16.1 濾鏡與規則的點線

  • Grid 濾鏡,位於「濾鏡 / 描繪 / 圖樣」選單內。
  • 報紙印刷濾鏡,位於「濾鏡 / 扭曲」選單內。

  • 製作線條的效果
    • Grid 濾鏡,是直觀又易懂的濾鏡。
    • Grid 濾鏡,能製作出橫線與直線,線條有固定的間距。
    • 報紙印刷濾鏡,也可來製作線條的效果。
    • 報紙印刷濾鏡,還可用來製作規則的班點。


命名與翻譯,令人費心思量
  • Newsprint 常用的字義,是新聞用紙。
  • 若譯為「新聞用紙」,並無法解釋 Newsprint 濾鏡的功能。
  • 報紙印刷濾鏡(Newsprint)源自於印刷技術,主要是 Halftone 網版印刷相關的技術。
  • Newsprint 反應了 GIMP 用字的重要特色,就是,想要提供一個與 Photoshop 類似的功能,卻又不想採用與 Photoshop 相同功能的名稱。


測試報紙印刷濾鏡,要有灰色的影像
  • 記得不要使用純黑、純白的影像。
  • 若不懂印刷技術也無妨,利用試誤法,也能學會此濾鏡的特性。

  • 產生256x256的新影像。
  • 將影像填上(192,192,192)的灰色。


  • 執行報紙印刷濾鏡 【註1】 , Cell Size 設20,「畫面分開為」設 Intensity ,「描繪斑點函式」設圓形,產生圓形的斑點。
  • 可使用不同的「描繪斑點函式」設定產生不同形狀的斑點。
  • Cell size 固定時,影像中灰色的強度影響斑點的大小。由於只有一種顏色(灰階192的灰色),故斑點的大小都一樣。



使用深色的影像,產生線條的紋路
  • 產生256x256的新影像。
  • 將影像填上(64,64,64)的灰色。 
 

  • 執行報紙印刷濾鏡 【註2】 ,Cell Size 設10,「畫面分開為」設 Intensity ,「描繪斑點函式」設線狀,產生橫線條的紋路。
 



選單及項目名稱的英文:
【註1】 Newsprint filter,Cell size設20,Screen Separate to設Intensity,Spot function設Round
【註2】 Newsprint filter,Cell size設10,Screen Separate to設Intensity,Spot function設Line


等價的 Python-Fu 程式碼
  • 前面,操作視窗介面,產生規則的點線的材質。
  • 也可用程式碼得到相同結果。
  • 啟動 GIMP Python Console
  • 將下面的 Python 程式碼,全部選取、複製、再貼到 GIMP Python-Fu Console 提示符號 >>> 之後,按下 Enter 。
  • 過一會,就會看到結果圖。

# Part I.
# 測試報紙印刷濾鏡,要有灰色的影像
# 此此產生規律的圓點
#
# 圖片的尺寸
width = 256
height = 256
img = pdb.gimp_image_new(width, height, RGB)
bg_layer = pdb.gimp_layer_new(img, width, height, RGB_IMAGE, "Background", 100, NORMAL_MODE)
pdb.gimp_image_add_layer(img, bg_layer, 0)
# 底圖為灰色
grey = (192, 192, 192)
pdb.gimp_context_set_background(grey)
pdb.gimp_edit_fill(bg_layer, BACKGROUND_FILL)

cell_size = 20
colorspace = 3 # LUMINANCE
gry_ang = 45.0
gry_spotfn = 0 # EUCLIDIAN-DOT
pdb.plug_in_newsprint(img, bg_layer, cell_size, colorspace, 0, gry_ang, gry_spotfn, 45.0, 0, 45.0, 0, 45.0, 0, 3)

pdb.gimp_display_new(img)



# Part II.
# 使用深色的影像,產生線條的紋路
#
# 圖片的尺寸
width = 256
height = 256
img = pdb.gimp_image_new(width, height, RGB)
bg_layer = pdb.gimp_layer_new(img, width, height, RGB_IMAGE, "Background", 100, NORMAL_MODE)
pdb.gimp_image_add_layer(img, bg_layer, 0)
# 填上(64,64,64)的灰色
grey = (64, 64, 64)
pdb.gimp_context_set_background(grey)
pdb.gimp_edit_fill(bg_layer, BACKGROUND_FILL)

cell_size = 10
colorspace = 3 # LUMINANCE
gry_ang = 45.0
gry_spotfn = 1 # LINES
pdb.plug_in_newsprint(img, bg_layer, cell_size, colorspace, 0, gry_ang, gry_spotfn, 45.0, 0, 45.0, 0, 45.0, 0, 3)

pdb.gimp_display_new(img)

  • 結果圖,和前面操作視窗介面所產生的,略有些不同,有可能只是網頁排版與顯示的問題。
  • Part I. 結果圖

  • Part II.結果圖