BREW中 - 显示和图像【DOC精选】.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BREW中 - 显示和图像a. BREW 支持哪些图像格式? 适用版本: 1.0, 1.1, 2.0 BREW 支持颜色深度达到运行设备上提供的值的任何 BMP 文件。 BREW 目前尚不支持 GIF 和 JPEG 图像。 有些设备可以支持 GIF 和 JPEG 图像,请参阅设备数据表来查看 OEM 是否提供了支持以上格式或其它格式图像的扩展。 BREW SDKreg; 1.1 以上版本都支持 PNG 格式和 BREW Compressed Image (BCI) 格式。 SDK 2.0 以上版本都支持 IDIB。 使用 IDIB 将免除您调用 CONVERTBMP 的工作,从而提高屏幕更新速度。 BREW SDKreg; 2.1 以上版本将支持 WBMP 格式。 在 BREW SDKreg; 1.0 中,模拟器只能模拟 1 位、4 位和 8 位颜色深度的 BMP。 SDK 1.1 增加了对 2 位颜色深度 BMP 的模拟器支持;2.0 SDK 增加了对 16 位颜色深度 BMP 图像的模拟器支持。 b. 如何生成 2 位图像? 适用版本: 1.0, 1.1, 2.0 2.0 SDK 中包含的 2 Bit Tool可以进行 2 位位图和 4 位位图之间的转换。 要构建采用灰度显示的手持设备使用的 2 位位图,可以使用 MS Paint 从调色板中选择白色、黑色、淡灰和深灰条目(通常为第一行和第二行的前两种颜色)来构建位图。 并将其保存为 16 色图像,然后使用 2Bit Tool 将其转换为 2 位位图。 c. 彩色和单色电话上的透明色是什么? 适用版本: 1.0, 1.1, 2.0 BREW 1.x 中紫色为彩色设备的透明色,白色是单色和 4 级灰度设备上的透明色。 BREW 2.0 以上版本中,可以通过 IBITMAP_SetTransparencyColor 更改透明色。 CONVERTBMP 可以将透明色初始化为兼容旧版本 BREW 的透明色(即紫色和白色)。 但通过其它方式获得的位图图像则没有固定的透明色。 d. 如何使用内存中的位图创建 IIMAGE 对象? 适用版本: 1.0, 1.1, 2.0 使用 ISHELL 接口 ISHELL_LoadResImage(用于资源)和 ISHELL_LoadImage(用于文件)完成作为资源或从文件中加载位图。 但是,有时可能必须从内存中初始化 IIMAGE 对象 - 例如显示前修改位图的内容时,或者不先将数据缓存到文件而通过套接字连接检索图像时。 在必须用内存中的位图初始化 IIMAGE 对象的情况下,应该使用 IIMAGE 接口 IIMAGE_SetStream。 下面的代码示例说明了这种技术。它通过调用 ISHELL_GetHandler 获得 BMP 图像处理程序的 Class ID,然后创建一个 MemAStream 对象并将其用作内存中位图的流。 注意:本例中的图像格式是 Windows BMP,“pMe-pBmpData”指向 Windows 文件格式 BMP 的开始 (BITMAPFILEHEADER)。 代码示例: AEECLSID cls; IImage *pIImage = NULL; IMemAStream *pMemStream = NULL; // 决定 BMP处理程序函数的类 ID,然后 // 创建此 BREW 类的实例 cls = ISHELL_GetHandler(pMe-a.m_pIShell, HTYPE_VIEWER, image/bmp); if (cls) { ISHELL_CreateInstance(pMe-a.m_pIShell, cls, (void **)(pIImage)); } if (pMe-pBmpData) { ISHELL_CreateInstance(pMe-a.m_pIShell, AEECLSID_MEMASTREAM, (void **)(pMemStream)); if (pMemStream) { //创建 MEMSTREAM 后将其作为内存中的位图的流。 IMEMASTREAM_Set(pMemStream, pMe-pBmpData, sizeof(pMe-pBmpData), 0, 0); IIMAGE_SetStream(pIImage, (IAStream*)pMemStream); // 现在以正常方式使用您的 IIMAGE 方法 IIMAGE_Draw(pIImage, ..., ...); IDISPLAY_UpdateEx(pMe-a.m_pIDisplay, TRUE); } } e. 如何从文件或资源文件加载图像? 通

文档评论(0)

taotao0b + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档