回答編集履歴
5
注意事項を追加
answer
CHANGED
@@ -33,5 +33,7 @@
|
|
33
33
|
Private Shared Function InstallFontFile(hwnd As IntPtr, path As String, flags As Integer) As Integer
|
34
34
|
End Function
|
35
35
|
'実行
|
36
|
-
InstallFontFile(IntPtr.Zero,
|
36
|
+
InstallFontFile(IntPtr.Zero, ここにパスを入れる, 0)
|
37
|
-
```
|
37
|
+
```
|
38
|
+
なお、InstallFontFileにはファイルをコピーする機能は無いようです。(flagsに何か渡せばやってくれるかもしれませんが)
|
39
|
+
そのためInstallFontFileの第2引数に渡すパスは、Fontsフォルダにコピーしたファイルのパスを渡してください。
|
4
非公開APIを見つけたので記載
answer
CHANGED
@@ -25,8 +25,13 @@
|
|
25
25
|
|
26
26
|
ダメならAPIのEnumFontFamiliesExを呼ぶとか?(すごくめんどそうなAPIですが)
|
27
27
|
|
28
|
-
取得ではなく、インストールであれば
|
28
|
+
取得ではなく、インストールであれば非公開APIですが以下のような手もあります。(外道)
|
29
|
-
Font Installation and Deletion
|
30
|
-
https://msdn.microsoft.com/en-us/library/windows/desktop/dd144833(v=vs.85).aspx
|
31
29
|
|
30
|
+
```VB
|
31
|
+
'宣言
|
32
|
+
<DllImport("fontext.dll", CharSet:=CharSet.Auto)> _
|
33
|
+
Private Shared Function InstallFontFile(hwnd As IntPtr, path As String, flags As Integer) As Integer
|
34
|
+
End Function
|
35
|
+
'実行
|
32
|
-
|
36
|
+
InstallFontFile(IntPtr.Zero, "D:\Hoge.ttf", 0)
|
37
|
+
```
|
3
fontインストール方法らしきものを記載
answer
CHANGED
@@ -23,4 +23,10 @@
|
|
23
23
|
・
|
24
24
|
・
|
25
25
|
|
26
|
-
ダメならAPIのEnumFontFamiliesExを呼ぶとか?(すごくめんどそうなAPIですが)
|
26
|
+
ダメならAPIのEnumFontFamiliesExを呼ぶとか?(すごくめんどそうなAPIですが)
|
27
|
+
|
28
|
+
取得ではなく、インストールであれば
|
29
|
+
Font Installation and Deletion
|
30
|
+
https://msdn.microsoft.com/en-us/library/windows/desktop/dd144833(v=vs.85).aspx
|
31
|
+
|
32
|
+
にあるようにfontsフォルダにコピーしたあと、APIを呼んでみるのはどうでしょう?
|
2
APIについての追記
answer
CHANGED
@@ -1,14 +1,15 @@
|
|
1
|
+
```VB
|
2
|
+
For Each mily In FontFamily.Families
|
3
|
+
Console.WriteLine(family.Name)
|
4
|
+
Next
|
5
|
+
```
|
6
|
+
|
1
7
|
```C#
|
2
8
|
foreach(var family in FontFamily.Families) {
|
3
9
|
Console.WriteLine( family.Name );
|
4
10
|
}
|
5
11
|
```
|
6
12
|
|
7
|
-
```VB.NET
|
8
|
-
For Each family In FontFamily.Families
|
9
|
-
Console.WriteLine(family.Name)
|
10
|
-
Next
|
11
|
-
```
|
12
13
|
|
13
14
|
で、フォント名が以下のようにずらずら~っと出るんですが、これではだめ?
|
14
15
|
Agency FB
|
@@ -20,4 +21,6 @@
|
|
20
21
|
Arial Unicode MS
|
21
22
|
・
|
22
23
|
・
|
23
|
-
・
|
24
|
+
・
|
25
|
+
|
26
|
+
ダメならAPIのEnumFontFamiliesExを呼ぶとか?(すごくめんどそうなAPIですが)
|
1
VB\.NETのコードを追記
answer
CHANGED
@@ -3,6 +3,13 @@
|
|
3
3
|
Console.WriteLine( family.Name );
|
4
4
|
}
|
5
5
|
```
|
6
|
+
|
7
|
+
```VB.NET
|
8
|
+
For Each family In FontFamily.Families
|
9
|
+
Console.WriteLine(family.Name)
|
10
|
+
Next
|
11
|
+
```
|
12
|
+
|
6
13
|
で、フォント名が以下のようにずらずら~っと出るんですが、これではだめ?
|
7
14
|
Agency FB
|
8
15
|
Algerian
|