【问题标题】:DIfference between ID2D1Bitmap and IWicBitmapID2D1Bitmap 和 IWicBitmap 之间的区别
【发布时间】:2014-11-05 00:16:50
【问题描述】:

ID2D1Bitmap 和 IWicBitmap 有什么区别 我有原始内存数据,我想创建一个位图

【问题讨论】:

    标签: windows directx direct2d wic


    【解决方案1】:

    WIC 位图表示系统内存中的图像,可以在 wide range of formats(JPEG、PNG、BMP 等)中。 D2D 位图表示 GPU 内存中的图像,它是少数hardware-accelerated fomats 之一。

    假设您想使用 D2D 将位图绘制到屏幕上,并且您的原始内存数据是与 D2D 兼容的格式,您应该直接使用ID2D1RenderTarget::CreateBitmap。如果它不是兼容的格式(例如,它是指向 .png 文件的原始数据的指针),则需要将其加载到 IWicBitmap 中,然后使用 ID2D1RenderTarget::CreateBitmapFromWicBitmap

    【讨论】:

    • 我有 16 位灰度图像原始数据,我想在上面画线。我应该如何进行
    • 一旦你在上面画线你想用它做什么?显示吗?将其作为另一个图像文件保存到磁盘?
    • 我想把它存回内存
    • 如何创建支持 16 位的渲染目标
    • 您应该能够使用DXGI_FORMAT_R16_* 系列格式。如果您希望浮点值 0.0->1.0 线性映射到 0->65535,请选择 UNORM
    猜你喜欢
    • 1970-01-01
    • 2021-12-25
    • 2020-05-10
    • 2014-09-20
    • 2010-10-28
    • 2015-10-04
    • 2012-08-12
    • 2011-02-18
    • 2019-12-21
    相关资源
    最近更新 更多