2013-11-04 5 views
4

파이썬 2.7이 설치된 윈도우에 새로운 글꼴을 설치하고 싶습니다. 먼저 myFont.ttf을 windows Fonts 폴더에 복사 한 다음 My Font (True Type) 키를 레지스트리 (HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts)에 추가했습니다. 이제 새로운 글꼴이 설치되었다는 시스템을 선언하고 싶습니다. 이를 위해 win32api.SendMessage을 사용해야한다는 것을 알았지 만이 방법에 필요한 인수를 제공하는 방법을 모르겠습니다.파이썬으로 윈도우에 TTF 글꼴 설치하기

어쨌든 ttf 글꼴을 파이썬과 함께 윈도우에 설치해야합니까? 나는 그것을 봤지만 파이썬에서 유용한 데이터를 찾을 수 없었다.

답변

5
import win32api 
import win32con 
import ctypes 

ctypes.windll.gdi32.AddFontResourceA("C:\\Users\\Username\\Desktop\\fontname.ttf") 
win32api.SendMessage(win32con.HWND_BROADCAST, win32con.WM_FONTCHANGE) 
+1

'ctypes.windll'을 피하십시오 (전역 적으로 캐시 된 함수 포인터 객체를 사용하는 것은 좋지 않습니다). 레거시 [A] NSI API를 피하십시오 (Windows 파일 시스템 경로는 기본적으로 UTF-16이며 1980 년부터 8 비트 코드 페이지 상자에 자신을 넣지 마십시오). 'gdi32 = ctypes.WinDLL ('gdi32');'result = gdi32.AddFontResourceW (u "C : \\ Users \\ Username \\ Desktop \\ fontname.ttf")'리턴 값을 검사하십시오. – eryksun