星期四, 10月 12, 2006

Week 4: 課程紀實 (2006/10/12): TCanvas & TColor



今天的數位媒體課程一開始, 黃老師同樣延續上星期的題目, 出了一題程式給同學思考: 如何在影像上塗鴉。

第二堂課, 我開始講解要完成這個題目, 需要具備什麼基本概念, 引導同學去探究 TImage::Canvas 這個 property 有什麼好玩的地方。我們從音樂創作與繪圖創作本質的異同開始談起, 希望同學了解一張影像 ( image ) 或者一張畫布 ( canvas ) 的最基本組成元素就是一個像素或畫素 ( pixel )。在一張乾乾淨淨的畫布上, 塗上各式各樣的顏色, 就變成一張影像了。




接著, 我們說明如何透過 TCanvas::Pixels 這個 property 來讀取或寫入像素的色彩值。BCB 提供了 TColor type 這個列舉資料型態 ( enum ), 而所有常用的色彩值, BCB 也都事先定義了相對應的以cl 為開頭的常數 ( const ) 提供程式設計師方便使用, 例如: clBlack = 0x00000000; clRed = 0x000000FF; clGreen = 0x0000FF00; clBlue = 0x00FF0000。除此, BCB 還提供了一個方便的 RGB macro, 讓使用者可以將我們熟悉的 R, G, B 色彩值轉換成所對映的數字。

本週同學的回家作業是: 弄清楚什麼是 AnsiString...

沒有留言:

張貼留言