728x90
안녕하세요
로로봉입니다 : )
오늘은 델파이에서 윈도우 폰트를 사용하는 법을 알아보겠습니다.
Windows 시스템 폰트를 불러오기 위해서 Uses 절에 Windows와 Messages 두가지 Pas파일을 Use 해주어야 합니다.
시스템 폰트를 불러와 정렬 후 리스트 박스에 추가하는 방법은 다음을 참고하면 됩니다.
procedure TfrmMain.SetFontFaceList;
var
sList: TStringList;
i: Integer;
DC : HDC;
begin
sList:=TStringList.Create;
try
DC := GetDC(0); // 윈도우 핸들러 얻어오기
EnumFontFamilies(DC, nil, @EnumFamToLines, LongInt(sList)); // 시스템 폰트 불러오기
sList.Sort; // 불러온 폰트 정렬
for i:=0 to sList.Count-1 do // 리스트에 저장
LBFont.Items.Add(sList[i]);
finally
FreeAndNil(sList);
end;
end;
// EnumFontFamilies 함수에 포인터 값으로 넘겨주는 함수
function EnumFamToLines(lplf: PLOGFONT; lpntm: PNEWTEXTMETRIC; FontType: DWORD; Lines: LPARAM): Integer; stdcall;
begin
with lplf^ do // 한글 폰트와 @붙지 않은 폰트만 검색
if (lfCharSet=HANGEUL_CHARSET) and (Pos('@', lplf^.lfFaceName)=0) then
TStrings(Lines).Add(lplf.lfFaceName);
Result := 1;
end;
좋아요♥ + 구독 부탁드립니다 : )
728x90
반응형
'개발 정보 > 델파이' 카테고리의 다른 글
[Delphi] 델파이 안드로이드 상태바, 네비게이션 바 높이 구하기 (0) | 2020.11.26 |
---|---|
[Delphi] 델파이 Provider 및 ClientDataSet 사용 시 필요한 Dll 설치 (0) | 2020.11.26 |
[Delphi] 델파이 시리얼 포트 확인하기 (0) | 2020.11.26 |
[Delphi] 델파이 MS Excel, Word 사용하기 (0) | 2020.11.26 |
[Delphi] 델파이 개발 툴 단축키 (0) | 2020.11.26 |
댓글