这是我在堆栈溢出时的第一个问题。我希望有一个人可以帮助我。我需要将大量Open Type Fonts添加到私有字体收集对象中,以便可以从每个otf文件中提取字体名称。这将允许我检查目标系统上是否已经安装了字体。而不是检查不可靠的文件名。
这是我的代码:
Add-Type -AssemblyName System.Drawing
$path = "\\Themis\Fonts\*.*"
$otffiles = Get-ChildItem $path
$fontCollection = New-Object System.Drawing.Text.PrivateFontCollection
$otffiles | ForEach-Object{
$fontCollection.AddFontFile($_.fullname)
}
$fontcollection.Families
以上代码在Windows 10上可以正常运行。但是,如果我在Windows 7上运行相同的代码,则会收到“找不到文件”异常,我理解该异常是在不支持字体文件时引发的。我不敢相信Windows 10支持这种处理otf文件的方法,而Windows 7不支持。我想念什么吗?还有另一种方法可以给这只猫蒙皮吗?
预先感谢