当前位置:首页 >> 编程语言 >> 【Qt】解决GDAL直接读取数据到QImage导致图像歪斜的问题,蓝魔w30(gdal qt)

【Qt】解决GDAL直接读取数据到QImage导致图像歪斜的问题,蓝魔w30(gdal qt)

cpugpu芯片开发光刻机 编程语言 1
文件名:【Qt】解决GDAL直接读取数据到QImage导致图像歪斜的问题,蓝魔w30 【Qt】解决GDAL直接读取数据到QImage导致图像歪斜的问题 QRect intersect_rect;....QImage img(intersect_rect.size(), QImage::Format_RGB888);uchar *pImageData = (unsigned char *)img.constBits();int img_width = intersect_rect.width();int img_height = intersect_rect.height();// QImage每行是按照sizeof(int)对齐的,如果在RasterIO时不指定最后一个参数,即行字节数,则图像会歪斜。int qimg_line_space = ceil((nRastercount * img_width) * 1.0 / sizeof(int)) * sizeof(int);GDALRasterBand* pBand = m_poDataset->GetRasterBand(i);pBand->RasterIO(GF_Read,intersect_rect.x(), intersect_rect.y(),sub_img_width, sub_img_height,pImageOffset,sub_img_width, sub_img_height,GDT_Byte,nRastercount,qimg_line_space); // 最后一个参数为0,会歪斜

原因是:QImage每行是按照sizeof(int)对齐的,如果在RasterIO时不明确指定最后一个参数,即行字节数,则图像会歪斜。

歪斜效果: 纠正后效果:

协助本站SEO优化一下,谢谢!
关键词不能为空
同类推荐
«    2025年12月    »
1234567
891011121314
15161718192021
22232425262728
293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
文章归档
网站收藏
友情链接