TAcceleratedBitmapInfo.iPixelShift的文档变化和二进制不兼容的问题
文章信息
- 设备, 软件 版本:
S60 3rd Edition, MR S60 3rd Edition, FP1
- 详细描述
S60第三版MR和FP1 SDK中所记载的TAcceleratedBitmapInfo.iPixelShift内容并不正确,描述如下:
“The number of bits needed to represent one pixel in the bitmap”
有关TAcceleratedBitmapInfo.iPixelShift的正确定义应为:
“The shift required to obtain the number of bits needed to represent one pixel in the bitmap. The number of bits per pixel is calculated as 1 << iPixelShift”
一些S60第三版手机使用了文档错误定义下的组件。
TAcceleratedBitmapInfo.iPixelShift在错误的实现下会返回32,而正确的值将会是5.
错误返回值上实现的程序在某些S60手机上将无法正确工作。
至少下列机型是存在上述错误机制的(TAcceleratedBitmapInfo.iPixelShift返回32)
- Nokia 3250
- Nokia E60
- Nokia E70
- Nokia N80
- Nokia N75
但另外一些机型正确的纠正了上述问题(TAcceleratedBitmapInfo.iPixelShift返回5):
- Nokia N95
注意:不过如果手机更新了新的软件版本,上述问题可能有所改变,使用TAcceleratedBitmapInfo.iPixelShift的程序应将以上两种情况都考虑在内。

