gpt4 book ai didi

c#对字符串执行文本渲染

转载 作者:行者123 更新时间:2023-12-04 10:14:06 25 4
gpt4 key购买 nike

首先请看Text Rendering文章。

Text rendering is the process of converting a string to a format that is readable to the user.



现在是 2020 年,但 Unity 不支持 RTL 复杂脚本语言。所以我正在寻找自己的渲染文本到最终结果中。显然,渲染文本比写作要在更高的层次上完成。让我举个例子:
U+0633 => Ð
U+0633 U+0633 => سس(原始字符串)
您可以看到有两个相同的字符,但是如果您在窗口中键入它们,它们会呈现不同的形状。实际渲染的字符是:
U+FEB3 U+FEB2 => ﺳﺲ(渲染字符串)
正如您所看到的,这两个字符代码都与它们输入的内容不同(如果您仔细观察它们实际上是不同的字符),但是您看到的结果是相同的,因此在中间有一个 API 可以正确呈现文本。根据微软 Text Rendering文章,通常文本以原始格式存储并在显示时呈现。
问题: C# (.Net Framework) 中是否有一种简单的方法可以将原始字符串转换为呈现的字符串?
示例:是否有将“U+0633 U+0633”转换为“U+FEB3 U+FEB2”的函数?这可能就像“Uniscribe”或 DirectWrite 所做的那样, 我需要将我输入的内容转换为我看到的内容!!!
PS:
1- 我知道一些 Unity Assets 可以做到这一点。但是他们写了多年来在所有系统中可用的东西,而且它们并不完整和健全。我喜欢用完整和健全的操作系统渲染器来做。
2- 我想如果它这么简单,Unity 开发人员会使用它。所以如果没有直接的方法,请简单地说没有这样的东西。
谢谢!

最佳答案

对于 RTL 语言,您可以使用 RTL Text Mesh Pro .
通过这个插件,你可以在编辑器中显示你的波斯语、阿拉伯语或任何 RTL 语言,或者直接从脚本传递一个变量。

关于c#对字符串执行文本渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61169696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com