MIDP2.0下处理Alpha通道产生半透明效果

透明

游戏中经常会用到半透明效果。但MIDP1.0年代似乎只有Nokia和LG两家的扩展API给出了可以处理Alpha通道的API。在MIDP2.0下,我们可以用Image类提供的方法得到一个图片的半透明版本。

        try {            image=Image.createImage("/ken.png");//载入原图        }        catch (IOException e) { }        int[] argb=new int[image.getWidth()*image.getHeight()];//产生图片数据数组        image.getRGB(argb,0,image.getWidth(),0,0,image.getWidth(),image.getHeight());//得到ARGB矩阵        for(int i=0;i<argb.length;i++){            argb[i]&=0xa0ffffff;//设置每个象素的alpha通道值为a0,正确的做法是不改变那些原本alpha值就为0的透明象素点        }        image1=Image.createRGBImage(argb,image.getWidth(),image.getHeight(),true);//产生新的图片

运行的效果如下图:

这样就可以在游戏中实现半透明效果。加上你的天才创意,游戏一定会变的更炫目!

本程序在eclipse3.0+eclipseme0.6+WTK2.2下测试通过。

时间: 2024-10-02 08:16:56

MIDP2.0下处理Alpha通道产生半透明效果的相关文章

Flash笔记-Alpha通道遮罩的三个要素

笔记 好些日子没有玩flash了,今天拾起来作了几个练习,发现之前在吕聪贤网页上看到的alpha通道遮罩居然不会做,出错了N久,最后在帮助中找到了一句话,特此面壁思过一下. 在flash8版本之前,要想做朦胧效果的遮罩,就必须在遮罩块的上面同时做一个羽化或者渐变的元件,使之能够于遮罩块同步,这样效果差,而且麻烦. 现在flash8里可以完全不用搞第三个元件,就做出朦胧的遮罩效果,但是需要谨记三个因素: 1.遮罩与被遮罩元件都必须是影片剪辑(MovieClip).因为alpha通道的遮罩效果必须是

关于携带完整 alpha 通道图标的技术研究

      ========================================================================      [声明]由于网友提醒,GDI+支持png图片的alpha绘制了.所以不再发布到首页了.感谢"斯克迪亚"网友的提醒.                   -- hoodlum1980  @ 2009年8月6日 补充: WINDOWS 从 XP 系统已经支持带有 alpha 通道的图标,即具有"反锯齿"效

ASP.NET1.1和2.0下进行https请求的不同实现

asp.net|请求 今天做项目中进行https请求时遇到这样的调试错误,内部错误:未能为 SSL/TLS 安全通道建立信任关系.错误页面:根据验证过程,远程证书无效.经过分析,在浏览器中打开要进行一个安全确认.就是这个对话框引起的问题.在网上搜了一下一般的解决办法,但是搜的内容比较少,现在在这里总结一下. using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Sec

Digital Unix Version 4.0下Oracle 8.0.5服务器的安装

oracle|unix|服务器 Digital Unix Version 4.0下Oracle 8.0.5服务器的安装 石骁騑(中软网络技术股份有限公司,北京,100081) 一. 系统需求在安装Oracle 8 服务器前,首先检查系统是否满足表1和表2所示的软硬件需求.1. 硬件需求 表1 硬件需求硬件项目 需求CPU Digital Unix alpha 系统内存 最少128M RAM交换空间 2-4倍的内存大小磁盘驱动(Disk Drives) 至少四个设备:一个用于Oracle软件的分发

android4.0下serial port给应用操作完成特殊定制

android4.0下serial port给应用操作完成特殊定制         我们在开发中,串口也就是serialport或者叫uart用的是相当频繁的,很普通的接口了,今天为什么在这提出来呢?笔者前年完成了一款android4.0平台的车载平板产品,客户外接了一个DTV,我们在android这边通过GPIO模拟IR来控制DTV盒子的.客户前面也做了特殊的一些应用,可以通过wifi跟服务器连.服务器通过wifi网络发送控制命令给车载平板机器,但是客户反馈在wifi 在heavy WiFi

alpha通道值读取-bmp图alpha通道值的读取问题

问题描述 bmp图alpha通道值的读取问题 想要读取bmp图的alpha通道值,bmp图是在photoshop中加了alpha通道的,但读取下来都为255,不知道该怎么正确读取 解决方案 看下你的bmp保存的格式对不对,是不是丢失了alpha

OpenGL ES 贴图图片是否有 Alpha 通道以及图片大小导致无法显示帖图的原因分析

OpenGL ES 贴图图片是否有 Alpha 通道以及图片大小导致无法显示帖图的原因分析 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 如下挖的坑,现在填一下! 1.Alpha通道的问题,在

jmetal 平台-在vc6.0 下jmetal 多目标平台 使用问题

问题描述 在vc6.0 下jmetal 多目标平台 使用问题 怎么使用jmetal 多目标平台呢?把它的各个包都放在VC6.0的哪里啊? 解决方案 http://tieba.baidu.com/p/1712883826

TURBOLinux 7.0下安装Oracle 8.1.7.0.1 release 3

oracle 作者:shiley 时间:2002-5-20 ------------------------------------------------------------------------------- 系统配置: CPU: RAM: 256M 目 的 : 在TURBOLinux 7.0下安装Oracle 8.1.7.0.1 release 3 企业版本数据库服务器. --------------------------------------------------------