1:
import
javax.microedition.lcdui.Graphics;
2:
3:
public class
CrystalRGB {
4:
5:
public final static void
drawRGBVRect(Graphics g,
int
color,
int
x,
int
y,
6:
int
width,
int
height) {
7:
int
[] rgb = getRGBVColor(color, height);
8:
for
(
int
i = 0; i
9:
int
nTemp = x + width - (i - x);
10:
nTemp = nTemp > 4 ? 4 : nTemp;
11:
g.drawRGB(rgb, 0, 4, i, y, nTemp, height,
true
);
12:
}
13:
}
14:
15:
public final static int
[] getRGBVColor(
int
color,
int
h) {
16:
int
[] rgb;
17:
int
RGB_L = h;
18:
int
nRgbData = RGB_L * 4;
19:
int
a;
20:
rgb =
new int
[nRgbData];
21:
22:
for
(
int
i = 0; i
23:
a = i;
24:
if
(a > 255) {
25:
a = 255;
26:
}
27:
int
col = color | (a
28:
rgb[i * 4] = col;
29:
rgb[i * 4 + 1] = col;
30:
rgb[i * 4 + 2] = col;
31:
rgb[i * 4 + 3] = col;
32:
}
33:
return
rgb;
34:
}
35:
36:
public final static void
drawRGBSRect(Graphics g,
int
color,
int
x,
int
y,
37:
int
width,
int
height) {
38:
int
[] rgb = getRGBSColor(color, width);
39:
for
(
int
by = y; by
40:
41:
int
nTemp = y + height - (by - y);
42:
43:
nTemp = nTemp > 4 ? 4 : nTemp;
44:
g.drawRGB(rgb, 0, width, x, by, width, nTemp,
true
);
45:
}
46:
47:
}
48:
49:
public final static int
[] getRGBSColor(
int
color,
int
h) {
50:
int
[] rgb;
51:
int
RGB_L = h;
52:
int
nRgbData = RGB_L * 4;
53:
rgb =
new int
[nRgbData];
54:
int
alpha = -127;
55:
for
(
int
i = 0; i
56:
alpha = -127 + i;
57:
int
col = color | (128 - alpha
58:
rgb[i] = col;
59:
rgb[i + RGB_L] = col;
60:
rgb[i + RGB_L * 2] = col;
61:
rgb[i + RGB_L * 3] = col;
62:
}
63:
return
rgb;
64:
}
65:
66:
}
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

