漸層色彩怎麼做?設定起點終點,實施線性內插,大功告成!
一道指令。指令格式如下:
W H TYPE R1 G1 B1 A1 R2 G2 B2 A2
W H 是圖片寬高。左上角像素座標 (0,0),右下角像素座標 (W-1,H-1)。(1 <= W, H <= 256)
TYPE 只有 0 與 1 兩種。0 左到右,呈線狀。1 內到外,呈環狀。(0 <= TYPE <= 1)
R1 G1 B1 A1 R2 G2 B2 A2 是起點與終點的顏色暨透明度數值。(0 <= R1 G1 B1 A1 R2 G2 B2 A2 <= 255)
左到右,起點在最左端像素,終點在最右端像素。內到外,起點在圖片正中央位置,終點在四個角落像素。如果起點與終點重疊,以起點為主。
指令範例:3 3 0 0 0 0 255 255 255 255 255,圖片大小3x3,漸層由左到右,從黑漸白。
請輸出處理後的圖片:兩個整數 W H (1 <= W, H <= 256),是圖片的寬和高;接下來的 H 行,每行有 W*4 個整數,是每個像素的 RGBA 值 (0 <= R G B A <= 255)。計算結果四捨五入。
3 3 0 0 0 0 255 255 255 255 255
3 3 0 0 0 255 128 128 128 255 255 255 255 255 0 0 0 255 128 128 128 255 255 255 255 255 0 0 0 255 128 128 128 255 255 255 255 255
1. 此功能即是 CSS 的 linear-gradient 和 radial-gradient。
2. 除了線性內插之外,亦可利用拋物線、sin函數,製作各種漸層效果。
3. 設定四個顏色,雙線性內插,效果更好。
4. 進階應用:製作漸層的RGBA值,改為製作漸層的比例[0.0, 1.0],然後每一個像素乘上比例。例如下圖的效果。
編號 | 身分 | 題目 | 主題 | 人氣 | 發表日期 |
沒有發現任何「解題報告」
|