【发布时间】:2011-03-25 06:49:20
【问题描述】:
我有一个 WriteableBitmap 并且希望用户能够在它上面进行绘制,就好像它是一个简单的位图一样。
我该怎么做?
【问题讨论】:
-
您是在谈论在现有 WritableBitmap 之上呈现一串文本吗?
-
是的 - 我需要在上面渲染一串文本。
标签: silverlight
我有一个 WriteableBitmap 并且希望用户能够在它上面进行绘制,就好像它是一个简单的位图一样。
我该怎么做?
【问题讨论】:
标签: silverlight
您可以在代码中设置 TextBlock 控件,使用字符串设置 Text 属性,并使用该 TextBlock 调用 WritableBitmap 的 Render() 方法。 TextBlock 永远不必在可视树上,但您必须在位图上调用 Invalidate() 才能显示文本。
private void RenderString(WriteableBitmap bitmap, string stringToRender)
{
TextBlock textBlock = new TextBlock();
textBlock.Text = stringToRender;
// set font, size, etc. on textBlock
bitmap.Render(textBlock, null);
bitmap.Invalidate();
}
【讨论】: