我希望能够做类似于这个例子的事情http://weblogs.asp.net/broux/archive/2011/02/08/silverlight-how-to-watermark-a-writeablebitmapimage-with-a-text.aspx。但是我在WinRT中使用WriteableBitmap扩展来渲染一些文本时遇到了麻烦,我想让它看起来与这个例子完全一样。有什么建议或帮助吗?
这样做可以在视觉上完成工作:
<Grid>
<Image Source="{Binding MyImage}" />
<Image Source="{Binding MyWatermark}" />
</Grid>
不需要进行所有的工作,就能够获得相同的效果。如果你想要让水印成为原始图像的一部分,将其转移到一个服务中是目前唯一的选择。如果没有WriteableBitmap
上的Render()
方法,你就没有其他选择了。即使是XAML Toolkit也无法解决这个问题。这是一个常见的请求。
但根据你的用例,这可能正是你想要的!
我希望如此。祝你好运。
你可以将该文本渲染为png资源,并在位图上叠加它。除非文本需要是动态的 - 那么你需要使用DirectWrite。WinRT XAML Toolkit有一个扩展方法,你可以用它来将文本渲染到WriteableBitmap。