LoginSignup
2
3

More than 1 year has passed since last update.

【wxpython】使用できるフォント一覧

Last updated at Posted at 2023-02-05

はじめに

wxpythonでstatictextのフォント変えたい!と思った時に、1つもフォント比較の記事が見つからず...同じことを思った誰かの役に立てば幸いです。
ちなみにフォント以外のstatictext関連はこちらの記事でほぼ事足りるかと思います。

環境はpythonが3.7.5, wxpythonは4.2.0です。

フォント一覧

とりあえず一覧はこちら。

英語表記 

All these places have their moments.
image.png

日本語表記 

日々鍛錬し、いつ来るともわからぬ機会に備えよ。
image.png
頭に振ってあるF* S* W*の数字で各フォントを識別しております。好みのフォントに目星をつけつつ次の章にお進みください。

フォントの設定方法

font_check.py
import wx
text = wx.StaticText(self, id=-1, label='書きたい言葉')
font = wx.Font(pixelSize, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, 
            wx.FONTWEIGHT_NORMAL, underline=False,faceName="", encoding=wx.FONTENCODING_DEFAULT)
text.SetFont(font)

StaticTextのフォントは上記の方法で設定できます。(参考の公式ページ)
今回はwx.FONTFAMILYwx.FontStylewx.FontWeightを変更してみました。 wx.FONTFAMILYがFと、wx.FontStyleがSと、wx.FontWeightがWと対応しています。以下に対応表を載せます。

wx.FONTFAMILY wx.FontStyle wx.FontWeight
1 wx.FONTFAMILY_DEFAULT wx.FONTSTYLE_NORMAL wx.FONTWEIGHT_NORMAL
2 wx.FONTFAMILY_DECORATIVE wx.FONTSTYLE_ITALIC wx.FONTWEIGHT_BOLD
3 wx.FONTFAMILY_ROMAN wx.FONTSTYLE_SLANT
4 wx.FONTFAMILY_SCRIPT wx.FONTSTYLE_MAX
5 wx.FONTFAMILY_SWISS

たとえば F5 S1 W2のフォントが気に入った場合は、先ほどのコードを

font_check.py
import wx
text = wx.StaticText(self, id=-1, label='書きたい言葉')
font = wx.Font(pixelSize,  wx.FONTFAMILY_SWISS , wx.FONTSTYLE_NORMAL, 
            wx.FONTWEIGHT_BOLD, underline=False,faceName="", encoding=wx.FONTENCODING_DEFAULT)
text.SetFont(font)

このように書きかえればOKです。

なおwx.FontEncodingはありすぎて今回やりきれず、wx.FONTENCODING_DEFAULTで固定にしました。一応、wx.FONTENCODING_CP932が日本語対応ぽかったのでちらりと試してみたのですが結構変わりそうでした。
またwx.FontWeightも横着して2種類しかやりませんでしたがもっとあるので公式をよければ覗いてください。

おわりに

wxpythonのバージョンが対応していないものだったのか、公式にある風に書いてあるものがいくつかエラーが出ました。
誰も変えたくならないのかも、非常に需要の低い記事を書いてしまったかもしれません...
フォント一覧を表記するために書いたコード全体はこちら

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3