我们有一个采用 32 bpp 数据的编码器库。我们有一个屏幕捕获库,它也需要支持 16 bpp。每当我需要将新的屏幕截图传递给编码器时,我想将 16bpp 的原始数据转换为 32bpp。如何有效地完成它,还有其他选择吗?
我不想更改编码器库,因为这也需要更改编码器的上游。
谢谢!
最佳答案
您可以将源位图加载到 HBITMAP 中,创建具有所需像素格式的目标位图,然后将源位图绘制到目标位图上。这将是最简单的方法。
如果您想直接使用这些位,那是可能的,但让系统为您操心会更容易。系统执行此操作时可能会更快,因为它会得到很好的优化。
关于c++ - 16 bpp 到 32 bpp 的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4387830/