【发布时间】:2012-12-22 18:29:45
【问题描述】:
如何为winRT 中的图像绘制字符串?在 WinForms 中,可以使用 drawstring() 命名空间内的 drawstring() 方法完成,但我在 WinRT API 中找不到它的等价物。
【问题讨论】:
标签: c# image windows-runtime winrt-xaml winjs
如何为winRT 中的图像绘制字符串?在 WinForms 中,可以使用 drawstring() 命名空间内的 drawstring() 方法完成,但我在 WinRT API 中找不到它的等价物。
【问题讨论】:
标签: c# image windows-runtime winrt-xaml winjs
在 Windows 8.1 中,它们最终支持将 XAML 控件呈现为位图。现在你可以使用
var renderTargetBitmap = new RenderTargetBitmap();
await renderTargetBitmap.RenderAsync(uiElement, width, height));
var buffer = await renderTargetBitmap.GetPixelsAsync();
var tmpWbm = new WriteableBitmap(renderTargetBitmap.PixelWidth, renderTargetBitmap.PixelHeight);
【讨论】:
您必须使用 DirectX。您可以使用 SharpDx 在 C# 中执行此操作。
【讨论】:
Direct2D 是 WinRT 中 GDI 的替代品。所以你必须使用 C++/CX 和 DirectX 来绘制文本。
我没有任何示例可供您参考,但也许this link(以及包含的链接)可以帮助您。
【讨论】:
你不能 - 不幸的是没有这样的 API :-(
【讨论】:
Google 用于“使用 Direct2D 和 DirectWrite 进行图形的 Metro CSharp”。这是他们的代码示例之一。这不是我见过的最简洁的例子,但它确实有效。使用 SharpDX 做同样的事情会更干净。
【讨论】: