MGImage* CGCanvas::toImage()
{
assert(m_bitmap != NULL);
SkBitmap &bitmap = *(m_bitmap->impl);
bitmap.lockPixels();
// init params
int width = bitmap.width();
int height = bitmap.height();
unsigned char* data = (unsigned char*)bitmap.getPixels();
PixelFormat pf;
byte_8 bit_count;
switch (bitmap.config())
{
case SkBitmap::kRGB_565_Config:
{
bit_count = 16;
pf = PF_RGBA5650;
break;
}
case SkBitmap::kARGB_8888_Config:
{
bit_count = 32;
pf = PF_RGBA8888;
break;
}
default:
{
assert(0);
break;
}
}
unsigned long image_size = sizeof(z11::byte_8)*(width*height*bit_count/8);
// init image
MGImage* ret = MGPersistenceImage::fromBlank(bit_count, width, height, pf);
byte_8 *pWrit
SkBitmap转换成Image
最新推荐文章于 2024-06-22 21:30:07 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)