gpt4 book ai didi

c# - WinForms.FontDialog 中缺少字体

转载 作者:太空宇宙 更新时间:2023-11-03 22:28:16 25 4
gpt4 key购买 nike

当我显示 WinForms.FontDialog(C#、.NET 2.0)的实例时,我丢失了一些我希望存在的字体(例如 Courier、Fixedsys、MS Sans Serif)。此外,一位客户提示他安装的 Adob​​e 字体也没有显示在列表中。

如何让这些字体显示在此对话框中?

最佳答案

FontDialog 旨在仅显示 TrueType 字体以保持与 GDI+ 的兼容性。让它显示设备字体需要一些反射黑客:

using System.Reflection;

...

FontDialog fontDialog1 = new FontDialog();

MethodInfo mi = typeof(FontDialog).GetMethod("SetOption",
BindingFlags.NonPublic | BindingFlags.Instance);
mi.Invoke(fontDialog1, new object[] { 0x40000, false });
fontDialog1.ShowDialog();

我不知道这是否也支持 Adob​​e 的 OpenType 字体,我没有。让我们知道。

关于c# - WinForms.FontDialog 中缺少字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/329225/

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