したがって、プロジェクトに含まれている font.otf ファイルを使用して、c# の PrivateFontCollection に .otf フォント ファイルを追加する必要があります。ファイルがローカルに読み込まれている間、サーバーにデプロイすると次の例外が発生します。
[例外: パスにフォントが見つかりませんでした: D:\Inetpub\MyApplication\Content\Fonts\ProximaNovaAlt-Black.otf 例外は: System.IO.FileNotFoundException: ファイルが見つかりません。System.Drawing.Text.PrivateFontCollection.AddFontFile (文字列ファイル名) で
ただし、Web サーバーを調べてその正確なディレクトリに移動すると、ファイルがそこにあり、読み取り専用ではありません。
フォント ファイルは、プロジェクト内の /Content/Fonts/ProximaNovaAlt-Black.otf の場所にあります。
また、ProximaNovaAlt-Black.otf ファイルのプロパティは次のとおりです。
最後に、エラーをスローしているコードを次に示します。
public Font GetFont(float fontSize)
{
string path = HttpContext.Current.Server.MapPath(AppDomain.CurrentDomain.BaseDirectory + @"Content\Fonts\ProximaNovaAlt-Black.otf");
try
{
PrivateFontCollection privateFontCollection = new PrivateFontCollection();
privateFontCollection.AddFontFile(path);
return new Font(privateFontCollection.Families[0], fontSize);
}
catch (Exception ex)
{
throw new Exception("Could not find font at path: " + path + " The exception is: " + ex.ToString());
}
}