开发者社区> 问答> 正文

C#与C++位图保存方式的区别是什么?如何将C#中位图buffer正确传到C++代码中?求大神指导

C#中位图保存方式与C++中位图保存方式的区别是什么?如何将C#中位图buffer正确传到C++代码中?求大神指导

展开
收起
a123456678 2016-03-05 16:45:30 2939 0
1 条回答
写回答
取消 提交回答
  • C++中位图分为32/24/16位的三种位图数据存储方式,很多时候C++中主要使用32位和24位,如果你没有特别声明的话。C#中的位图
    也多数是32位的。这些所谓的32位或者24位说的是位图中一个像素用多少位来表示,一个像素一般包含RGB三基色,也就是红(red)、
    绿(green)、蓝(blue),32位标识则多了一个透明通道位A(alpha)。现在一般都是32位的图,包含透明通道的。
    假设你C#和C++都是32位的数据位图,那么你拷贝的时候也要考虑到数据位是否安装RGBA排列还是按照ARGB还是BGRA等等的排列方式。
    你可以先获得位图的基本信息判断是32位图还是24位图,如果是相同位的位图则直接进行数据拷贝即可,不同的话则只能进行对位拷贝一般用
    循环赋值。

    2019-07-17 18:53:47
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载