创建Direct2D1位图并将其绘制到Direct2D1 RenderTarget

时间:2013-11-06 14:45:17

标签: c# bitmap direct2d sharpdx

我想在不使用WIC的情况下执行以下操作:

  1. 创建Direct2D1位图并在其中绘制内容。

    BitmapProperties props = new BitmapProperties(new SharpDX.Direct2D1.PixelFormat(Format.B8G8R8A8_UNorm, AlphaMode.Premultiplied));
    var renderT = new SharpDX.Direct2D1.BitmapRenderTarget(m_d2dRenderTargetImage, CompatibleRenderTargetOptions.None, new SharpDX.Direct2D1.PixelFormat(Format.B8G8R8A8_UNorm, AlphaMode.Premultiplied));
    
    renderT.BeginDraw();
    renderT.Clear(SharpDX.Color.Yellow);
    renderT.EndDraw();
    
  2. 将此位图保存为变量。

    RastImage = new SharpDX.Direct2D1.Bitmap(renderT, new Size2(targetWidth, targetHeight), props);
    
  3. 将此位图绘制为Direct2D RenderTarget。

    m_d2dRenderTarget = new RenderTarget(m_d2dFactory, surface, rtp);
    
  4. 但这没有做任何事情。有人能告诉我我做错了什么吗?没有WIC它甚至可以工作吗?欢迎任何帮助。我已经搜索了很多,但从未真正找到没有WIC的例子。

1 个答案:

答案 0 :(得分:1)

我明白了,很容易看到。

RastImage = rendertT.Bitmap