轮廓/描边格式化文本

发布于 2024-08-03 03:33:17 字数 404 浏览 6 评论 0原文

我正在将具有不同前景色的 FormattedText 渲染为不同的字符(例如前两个红色,接下来两个黄色,例如......),现在我必须显示此文本周围的轮廓。对于应用轮廓(描边),我必须将此 FormattedText 转换为几何图形,然后绘制几何图形,如

Geometry textGeometry = FormattedText.BuildGeometry(new Point(_xOffset, _yOffset)); DrawingContext.DrawGeometry(null, new Pen(new SolidColorBrush(OutlineColor), storkeWidth),textGeometry);

但问题是它会将 FormattedText 渲染为红色并丢失我的格式颜色。 我是否遗漏了某些内容,或者还有其他方法来概述文本。

I am rendering the FormattedText with different foreground color to different character(fore example first two red, next 2 yellow like..), now i have to display outline surrounded to this text. For apply outline(stroke) i have to convert this FormattedText into geometry and then draw geometry like

Geometry textGeometry = FormattedText.BuildGeometry(new Point(_xOffset, _yOffset));
drawingContext.DrawGeometry(null, new Pen(new SolidColorBrush(OutlineColor), storkeWidth),textGeometry);

but the problem is that it will render the FormattedText in red color and lost my formatting color.
am I missing something or there is another way to outline the text.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

凤舞天涯 2024-08-10 03:33:17

我想我找到了解决方案。
首先绘制格式化文本,然后绘制几何图形,它将显示文本和轮廓。

Geometry textGeometry = FormattedText.BuildGeometry(new Point(_xOffset, _yOffset)); 
drawingContext.DrawText(FormattedText,new Point(0,0));
drawingContext.DrawGeometry(null, new Pen(new SolidColorBrush(OutlineColor), storkeWidth),textGeometry);

如果有人有更好的方法请告诉我。

I think i found the solution.
first draw the formatted text and then the geometry, it will display the text as well as outline.

Geometry textGeometry = FormattedText.BuildGeometry(new Point(_xOffset, _yOffset)); 
drawingContext.DrawText(FormattedText,new Point(0,0));
drawingContext.DrawGeometry(null, new Pen(new SolidColorBrush(OutlineColor), storkeWidth),textGeometry);

If some has better approach please let me know.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文