OSに登録されていないフォントを使う
友人からいただいたネタです。
OSに登録されていないフォントをアプリケーションで使用したい場合、PrivateFontCollectionというクラスを使うことでアプリケーション用に用意したフォントを使うことが出来ます。
フォントファイルを用意し、AddFontFileメソッドでコレクションにフォントを追加します。追加したフォントは、Familiesプロパティで取得します。
実装例
Private objPrivateFonts As New PrivateFontCollection
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
' パスを指定してフォントを追加する
Me.objPrivateFonts.AddFontFile("ipagui.ttf")
' 使用するフォントを設定する
Me.Label1.Font = New Font(objPrivateFonts.Families(0), 11)
End Sub
他にもリソースファイル等からフォントファイルをメモリに展開し、AddMemoryFontメソッドを使用してメモリに格納されているフォントをPrivateFontCollectionに追加して使用することも出来ます。