将ID2D1Effect输出存储在ID2D1Bitmap / Image中以在以后绘制它吗?

用户名

我想将ID2D1Effect的输出图像转换为ID2D1Bitmap,因此我可以在以后绘制它,而不必一遍又一遍地应用所有效果...

我的第一次尝试只是保留ID2D1Effect :: GetOutput图像ptr,但是如果我将效果与另一个图像源一起使用,则此图像会更改...

我的下一个尝试是创建一个设置了D2D1_BITMAP_OPTIONS_TARGET标志的位图(ID2D1DeviceContext :: CreateBitmap),并将效果输出绘制到该位图,但这似乎也不起作用...

绘制效果到给定的Bitmap1 **(目标):

ComPtr<ID2D1Image> swapChainImageBuffer;
    this->pDeviceContext->CreateBitmap(D2D1::SizeU(120, 50), nullptr, 0, D2D1::BitmapProperties1(D2D1_BITMAP_OPTIONS_TARGET), dest);
    this->pDeviceContext->GetTarget(swapChainImageBuffer.GetAddressOf());
    this->pDeviceContext->SetTarget(*dest);
    this->pDeviceContext->BeginDraw();
    this->pDeviceContext->Clear(D2D1::ColorF(RGB(0, 0, 0), 1.f));
    this->pDeviceContext->DrawImage(this->pCompositeEffect.Get(), D2D1::Point2F(20, 10));    
    this->pDeviceContext->EndDraw();
    this->pDeviceContext->SetTarget(swapChainImageBuffer.Get());
    swapChainImageBuffer = nullptr;

稍后绘制位图:(预览)

this->pD2DeviceContext->DrawBitmap(preview.Get(), D2D1::RectF(x, y, x+width, y + height));

(相同的DeviceContext-没有返回HRESULT的函数返回错误代码)

我究竟做错了什么?

我应该怎么做?

用户名

只是忘了在CreateBitmap中指定PixelFormat。

D2D1::PixelFormat(DXGI_FORMAT_B8G8R8A8_UNORM, D2D1_ALPHA_MODE_PREMULTIPLIED)

现在工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从ID3D11Texture2D到ID2D1Bitmap,可以吗?

来自分类Dev

How to convert a image file loaded in memory to a ID2D1Bitmap in C++

来自分类Dev

从 .bmp 文件加载 ID2D1Bitmap

来自分类Dev

您可以将javascript“存储”在数据库中,然后在以后执行它吗?

来自分类Dev

重新呈现时水平翻转ID2D1Bitmap

来自分类Dev

如何在C ++中将内存中加载的图像文件转换为ID2D1Bitmap

来自分类Dev

绘制矩形后ID2D1DeviceContext EndDraw D2DERR_WRONG_STATE

来自分类Dev

绘制矩形后ID2D1DeviceContext EndDraw D2DERR_WRONG_STATE

来自分类Dev

ID2D1Bitmap1 :: Map问题

来自分类Dev

如何持久化表单bean对象的值以在以后的Struts 1中检索它

来自分类Dev

如何在CLIPS中存储诸如<或> =之类的函数作为以后评估它的值?

来自分类Dev

在Spring MVC中,您如何存储用户输入并在以后重现它?

来自分类Dev

如何将Aeron驱动程序JAR嵌入Rust程序中并在以后启动它?

来自分类Dev

如何将原型JS中的$('id1','id2')转换为jQuery?

来自分类Dev

Java:如何在1D数组中存储2D数组

来自分类Dev

将24位BGR图像从内存加载到ID2D1Bitmap1的最佳方法

来自分类Dev

curl将“资源ID#2”附加到输出中

来自分类Dev

将输出重定向到2>&1感到困惑吗?

来自分类Dev

检查表1中的ID1是否等于表2中的ID2,如果是,则按照ID2的“顺序”将表1中的内容添加到表2中(不改变顺序)

来自分类Dev

以后可以将iOS应用添加到仅Apple Watch应用中吗?

来自分类Dev

可以将精灵加载到一个单独的类中以便以后重用吗?

来自分类Dev

将属于表1中所选值的主键ID插入表2中

来自分类Dev

从2d张量中的特定列开始尝试将2d张量乘以1d张量

来自分类Dev

将2D矩阵中的多个1D信号与2D矩阵中的多个1D内核进行卷积

来自分类Dev

您将存储Makefile以便以后卸载吗?

来自分类Dev

如何将2D模型中的尺寸转换为1D?

来自分类Dev

我可以在3d中绘制几个直方图吗?

来自分类Dev

将2d数组输出到html文件中

来自分类Dev

如何将numpy中的1D数组视为(1 x n)2D数组?

Related 相关文章

  1. 1

    从ID3D11Texture2D到ID2D1Bitmap,可以吗?

  2. 2

    How to convert a image file loaded in memory to a ID2D1Bitmap in C++

  3. 3

    从 .bmp 文件加载 ID2D1Bitmap

  4. 4

    您可以将javascript“存储”在数据库中,然后在以后执行它吗?

  5. 5

    重新呈现时水平翻转ID2D1Bitmap

  6. 6

    如何在C ++中将内存中加载的图像文件转换为ID2D1Bitmap

  7. 7

    绘制矩形后ID2D1DeviceContext EndDraw D2DERR_WRONG_STATE

  8. 8

    绘制矩形后ID2D1DeviceContext EndDraw D2DERR_WRONG_STATE

  9. 9

    ID2D1Bitmap1 :: Map问题

  10. 10

    如何持久化表单bean对象的值以在以后的Struts 1中检索它

  11. 11

    如何在CLIPS中存储诸如<或> =之类的函数作为以后评估它的值?

  12. 12

    在Spring MVC中,您如何存储用户输入并在以后重现它?

  13. 13

    如何将Aeron驱动程序JAR嵌入Rust程序中并在以后启动它?

  14. 14

    如何将原型JS中的$('id1','id2')转换为jQuery?

  15. 15

    Java:如何在1D数组中存储2D数组

  16. 16

    将24位BGR图像从内存加载到ID2D1Bitmap1的最佳方法

  17. 17

    curl将“资源ID#2”附加到输出中

  18. 18

    将输出重定向到2>&1感到困惑吗?

  19. 19

    检查表1中的ID1是否等于表2中的ID2,如果是,则按照ID2的“顺序”将表1中的内容添加到表2中(不改变顺序)

  20. 20

    以后可以将iOS应用添加到仅Apple Watch应用中吗?

  21. 21

    可以将精灵加载到一个单独的类中以便以后重用吗?

  22. 22

    将属于表1中所选值的主键ID插入表2中

  23. 23

    从2d张量中的特定列开始尝试将2d张量乘以1d张量

  24. 24

    将2D矩阵中的多个1D信号与2D矩阵中的多个1D内核进行卷积

  25. 25

    您将存储Makefile以便以后卸载吗?

  26. 26

    如何将2D模型中的尺寸转换为1D?

  27. 27

    我可以在3d中绘制几个直方图吗?

  28. 28

    将2d数组输出到html文件中

  29. 29

    如何将numpy中的1D数组视为(1 x n)2D数组?

热门标签

归档