首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SharpDX绘制Direct2D位图不同的Direct2D工厂

SharpDX绘制Direct2D位图不同的Direct2D工厂
EN

Stack Overflow用户
提问于 2014-01-22 14:00:14
回答 1查看 1.8K关注 0票数 0

我已经创建了绘制到SharpDX.Direct2D1.BitmapRenderTarget所需的所有内容。

我可以使用目标.bitmap属性访问位图本身。

我现在的问题是,如何使用另一个WicRenderTarget绘制这个位图?

类似于:

代码语言:javascript
复制
var wicFactory = new ImagingFactory();
var d2dFactory = new SharpDX.Direct2D1.Factory();
var wicBitmap = new Bitmap(wicFactory, width, height, SharpDX.WIC.PixelFormat.Format32bppBGR, BitmapCreateCacheOption.CacheOnLoad);
var d2dRenderTarget = new WicRenderTarget(d2dFactory, wicBitmap, renderTargetProperties);

d2dRenderTarget.BeginDraw();
d2dRenderTarget.Clear(SharpDX.Color.Black);
d2dRenderTarget.FillGeometry(rectangleGeometry, solidColorBrush, null);
d2dRenderTarget.DrawBitmap(MY BITMAPRENDERTARGET.BITMAP_FROM OTHER D2D FACTORY);
d2dRenderTarget.EndDraw();

但是这会在EndDraw()中抛出一个“EndDraw”异常。

我怎样才能实现我想要做的事?

我使用以下链接中的代码来创建WIC输出所需的所有内容:https://github.com/sharpdx/SharpDX/blob/master/Samples/Direct2D1/RenderToWicApp/Program.cs

我不想写几何学,我想要写我的位映射目标位图。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-22 18:24:27

您无法绘制由另一个D2D工厂创建的位图。用你的工厂创建它。如果您无法控制其他位图的创建方式,请通过GetFactory方法获取它的工厂,并使用它来创建对象。

有关在呈现目标或工厂中可以共享的内容的更多信息,请参见资源概览

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21284990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档