2017-05-21 13 views
1

私は与えられたディレクトリからすべてのフォント(フォーマット.ttf.otf)をインストールするPoweshellスクリプトを書こうとしています。しかし、私は既にインストールされているフォントを無視したい。そのためには、フォントの名前(ではなく、ファイル名)を取得する必要があります。フォントの名前をpowershell

どうすればいいですか?

答えて

1

はあなたがそのために、.NETを使用することができます@LotPings

からのコメントから編集します。次の例では、指定されたパスのファイルのリストを調べ、PrivateFontCollectionクラスを使用してフォント名を取得します。

Add-Type -AssemblyName System.Drawing 
$path = "<path to the fonts>\*.ttf" 

$ttfFiles = Get-ChildItem $path 

$fontCollection = new-object System.Drawing.Text.PrivateFontCollection 

$ttfFiles | ForEach-Object { 
    $fontCollection.AddFontFile($_.fullname) 
    $fontCollection.Families[-1].Name 
} 
+0

あなたは '-AssemblyName System.Drawing'と' $ fontCollection.Families-タイプを追加する必要があります[0] .Name'は、 '[-1]' – LotPings

+0

良い点、編集への変更を最初のフォントを繰り返します答えは –

+0

@LotPingsありがとう。不足しているフォントもインストールされますか? – Cusp

関連する問題