如何在 SDL 中从系统中检索字体?

How do I retrieve a font from the system in SDL?

提问人:Joshua 提问时间:8/16/2021 最后编辑:stuartdJoshua 更新时间:8/16/2021 访问量:343

问:

如何在 SDL-TTF 中从系统中检索字体?TTF_OpenFont真的想要一条绝对的道路。我正在尝试尽可能多地跨平台编码。

准备放入工作代码的非工作代码:

public static IntPtr ResolveFont(string font, int size)
{
     var pfont = TTF_OpenFont(font + ".ttf", size);
     if (pfont == IntPtr.Zero) throw new InvalidOperationException(SDL_GetError());

     return pfont;
}

我发现了一个相关的问题来获取字体列表,但事实并非如此。我打算只获取我知道存在的字体(最后,通过使用包管理器并声明对字体包的依赖关系)。

(此问题与语言无关:C# 标记仅用于语法突出显示。

与 C# 语言无关的 跨平台 SDL-TTF

评论

0赞 8/16/2021
TTF_OpenFont() 返回 NULL
1赞 Joshua 8/16/2021
@OlivierRogier:我很清楚 TTF_OpenFont() 返回 null;但是,现有的答案对我来说都不可用。将绝对路径传递给系统文件和跨平台不要混合,并且选择不同的字体以便我可以发布它太麻烦了。
0赞 8/16/2021
@.约书亚:那么问题是什么,问题是什么。我其实不太明白。如果 TTF 需要绝对路径,而您不想提供它,该怎么办?
1赞 8/16/2021
它是什么样子的?不能根据目标平台使用路径吗?甚至是应用程序设置?
1赞 8/16/2021
那就瘦了!github.com/dotnet/maui

答: 暂无答案