65.9K
CodeProject 正在变化。 阅读更多。
Home

从字体名称查找字体文件 (VB.Net 版本)

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.77/5 (8投票s)

2005 年 4 月 24 日

CPOL

1分钟阅读

viewsIcon

52092

downloadIcon

1191

如何从字体名称获取字体文件名

Sample Image - Finding_a_Font_file.jpg

从字体名称查找字体文件 (VB.NET 版本)

有人请求我帮助他从“字体名称”获取“字体文件的名称”(例如,“Arial”的文件是“ARIAL.TTF”,位于 %systemroot%\fonts 文件夹中);我在 CodeProject 网站上找到一个不错的解决方案:https://codeproject.org.cn/gdi/fontfile.asp。它使用 VisualC++ 6 编写;我将代码转换为 VB.NET

它能做什么

从字体的显示名称(例如,你在 MS Word 字体组合框中看到的名称)检索字体文件名。Windows 的所有 Win32 版本,追溯到最初的 Win95,都在 Windows 目录下有一个名为“Fonts”的目录。该目录在注册表中 HKLM\Software\Microsoft\Windows\CurrentVersion\Fonts 键下镜像。当然,在 NT 下,"Windows" 被替换为 "Windows NT"。
如果未找到字体名称,我会在注册表中搜索,如果未找到,则追加“(True Type)”,如果仍然未找到,则追加“(All Res)”。

如何使用它

在 VB.NET 模块中有 2 个主要函数

  1. getOSVer 用于获取操作系统版本(以确定将使用哪个注册表键)
  2. RegValue 用于从注册表中读取值

致谢

特别感谢 Hans Dietrich 撰写的精彩文章。

用法

此软件发布到公共领域。您可以以任何您喜欢的方式自由使用它。如果您修改或扩展它,请考虑在此处发布新代码供大家共享。此软件按“原样”提供,不提供任何明示或暗示的保证。我对因本软件造成的任何损害或业务损失不承担任何责任。
© . All rights reserved.