본문 바로가기

Language/Python

[wxPython] wx.Font를 이용한 폰트 지정하기

본 내용의 출처는 이글루 블로그의 '하린아빠' 라는 네임을 쓰시는 분의 블로그입니다.

[출처] - http://pythondev.egloos.com/103204


행여나 이글루 블로그가 없어지면 참고할 곳이 사라지기에 주인장님께 댓글을 남기고 퍼 옵니다.




[wxPython] wx.Font를 이용한 폰트 지정하기



#!/usr/bin/python
# -*- coding: cp949 -*-
# layout.py

import wx


class MyFrame(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title, wx.DefaultPosition, wx.Size(325, 320))

        panel = wx.Panel(self, -1)

        text1 = "Now listen to me mama\nMama mama\nYou're taking away my last chance\nDon't take it away"

        text2 = '''You won't cry for my absence, I know - 
            16 You forgot me long ago. 17 Am I that unimportant...?
            Am I so insignificant...?
            Isn't something missing?
            Isn't someone missing me?'''

        text3 = '''But if I had one wish fulfilled tonight
            I'd ask for the sun to never rise
            If God passed a mic to me to speak
            I'd say stay in bed, world
            Sleep in peace'''


        # font 생성(크기, 폰트종류, 스타일, 굵기)
        font1 = wx.Font(10, wx.NORMAL, wx.ITALIC, wx.NORMAL)
        font2 = wx.Font(10, wx.ROMAN, wx.NORMAL, wx.NORMAL)
        font3 = wx.Font(10, wx.MODERN, wx.NORMAL, wx.BOLD)
        
        lyrics1 = wx.StaticText(panel, -1, text1,(30,15), style=wx.ALIGN_CENTRE)
        lyrics1.SetFont(font1)
        lyrics2 = wx.StaticText(panel, -1, text2,(30,100), style=wx.ALIGN_CENTRE)
        lyrics2.SetFont(font2)
        lyrics3 = wx.StaticText(panel, -1, text3,(5,220), style=wx.ALIGN_CENTRE)
        lyrics3.SetFont(font3)
        self.Center()

class MyApp(wx.App):
    def OnInit(self):
        frame = MyFrame(None, -1, 'calculator.py')
        frame.Show(True)
        self.SetTopWindow(frame)
        return True


app = wx.App()
mainapp = MyApp(app)
mainapp.MainLoop()    

[실행 화면]