英語表記のフォント名を取得するには?


toru  2003-11-30 01:24:45  No: 80635

皆さんこんにちは。
VB6で英語表記のフォント名を取得したいのですが、どのようにしたらよいのでしょうか?
Illustrator にスクリプトでフォント設定を行おうとしているのですが、設定するフォント名は英語表記のものでないとだめみたいなんです。
"MS ゴシック" の場合は、"MS-Gothic" という具合に・・・
どなたか、英語表記のフォント名の取得の仕方を知っている方はいらっしゃいますか?


魔界の仮面弁士  2003-11-30 04:48:02  No: 80636

「英語(≒アルファベット?)を表示できるフォント」を得たい、という事ですか?
それならば、殆んどのフォントが表示可能だと思いますよ。
表示できないのは、"Windings"や"Symbol"等の記号系フォントぐらいでしょう。

それとも、「アルファベットのみで構成されたファイル名」が得たいのでしょうか?
それならば例えば、

Private Sub Form_Load()
    Dim I As Long
    Dim F As String
    
    For I = 0 To Screen.FontCount - 1
        F = Screen.Fonts(I)
        If Not F Like "*[!0-~ !-/]*" Then
            List1.AddItem "○" & vbTab & F
        Else
            List1.AddItem "×" & vbTab & F
        End If
    Next
End Sub

のように、Like演算子で判定するという方法が考えられます。

# ………そういう事では無いのかな?

> "MS ゴシック" の場合は、"MS-Gothic" という具合に・・・
"MS UI Gothic"というフォント名は聞いた事がありますが、
"MS-Gothic"というフォント名は聞いた事が無いです。


魔界の仮面弁士  2003-11-30 05:14:11  No: 80637

言語名までも含めて列挙するなら、EnumFontFamiliesEx APIを利用できます。
http://fumiyuki-web.hp.infoseek.co.jp/tech/tech013/

>> "MS ゴシック" の場合は、"MS-Gothic" という具合に・・・
もしかして、(WinXPなどの)コントロールパネルの"フォント"フォルダに
表示される、『MS Gothic & MS PGothic & MS UI Gothic』のような
文字列を得たいということでしょうか? もしそうなら、レジストリの
 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts
あたりを取得すれば良いかも。


toru  2003-11-30 23:41:03  No: 80638

魔界の仮面弁士さん、書き込みありがとうございます。

>「英語(≒アルファベット?)を表示できるフォント」を得たい、という事ですか?
いいえ、違います。

>それとも、「アルファベットのみで構成されたファイル名」が得たいのでしょうか?
これも、少し違います。

>もしかして、(WinXPなどの)コントロールパネルの"フォント"フォルダに
>表示される、『MS Gothic & MS PGothic & MS UI Gothic』のような
そうです、だいたいこのようなことがしたいのです。

私が、その例として、
「"MS ゴシック" の場合は、"MS-Gothic" という具合に・・・」
と書いたつもりだったのですが、余計分かりづらくなってしまいましたか?

魔界の仮面弁士さんがおっしゃっている、「レジストリから・・・」というのも一瞬いけそうな感じもしましたが、グループで列挙されているのでちょっと面倒かな・・・
もうちょっとスマートに取得したいなと思います。

先にも書いたとおり、私がしたいことは、Adobe の Illustrator にスクリプトでフォント設定をしたいのです。
Illustrator のテキストフォントに、例えば "MS ゴシック" を設定したい時は "MS-Gothic" と指定してやらなくてはならないのです。
"MS ゴシック" では、エラーになります。
(これはあくまでも、スクリプトでの話です。)

そのため、"MS-Gothic" のような英語表記のフォントリストの取得をし、そのリストの中からユーザーに選んでもらって Illustrator に設定したいと思っています。
できれば、何らかの方法で日本語表記と英語表記の関連づけもされていれば、ユーザーによる選択時は日本語表記で、Illustrator への設定時は英語表記でという具合にできるのですが・・・
どなたか情報はお持ちではないでしょうか?

それから、
>"MS UI Gothic"というフォント名は聞いた事がありますが、
>"MS-Gothic"というフォント名は聞いた事が無いです。
確かに通常は、 "MS-Gothic" を "MS Gothic" のように途中のハイフォンは、スペースになっているものなのかも知れませんが、これも使用するアプリによって色々あるみたいです。
Illustrator の場合は、"MS-Gothic" です。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加