开发者

How to draw a transparent rectangle?

How to 开发者_StackOverflowdraw a transparent rectangle in j2me?


Transparency is supported only in immutable images, i.e. images loaded from files. So you can create appropriate image. Or create transparency via filling its transparency parts with background color.


Nokia has some functions that will allow you to draw transparent rects and polygons http://www.developer.nokia.com/Resources/Library/Java/_zip/GUID-237420DE-CCBE-4A74-A129-572E0708D428/com/nokia/mid/ui/DirectGraphics.html

However if you want it to be a generic solution you should create a transparent image in code and draw it in the appropriate position. Create a int array with size = width*height then fill it with the required color (for example 0x550000ff for semi transparent blue) and create the image using Image.createRGBImage (and setting the last parameter to true).

int[] tmpArray = new int[width*height];
for(int i=tmpArray.length;i--!=0;)
    tmpArray[i] = 0x550000ff;
Image transparentRectImg = Image.createRGBImage(tmpArray,width,height,true);

Also don't forget that some old j2me devices do not support alpha transparency even in images.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜