나는 사용자의 PC에있을 가능성이없는 특정 바코드 참 유형 글꼴이 필요한 앱을 만들고 있습니다.델파이에 글꼴 임베드
어떻게 든 글꼴을 응용 프로그램에 포함 할 수 있습니까? 아니면 설치 프로그램을 사용하여 글꼴을 설치해야합니까?
나는 사용자의 PC에있을 가능성이없는 특정 바코드 참 유형 글꼴이 필요한 앱을 만들고 있습니다.델파이에 글꼴 임베드
어떻게 든 글꼴을 응용 프로그램에 포함 할 수 있습니까? 아니면 설치 프로그램을 사용하여 글꼴을 설치해야합니까?
예, EXE 파일에 리소스로 저장할 수 있으며 사용자의 PC에서는 TResourceStream 인스턴스를 사용하여 파일로 추출 할 수 있습니다. 그런 다음 AddFontResource API 함수를 호출 할 수 있습니다. 마침내 시스템의 모든 최상위 창에 WM_FONTCHANGE 메시지를 보내야합니다 (MSDN 웹 사이트의 AddFontResource 설명의 Check Remark 섹션 참조).
예제 코드가 필요하면 알려주십시오.
이 글꼴에 대한 재배포 권한이없는 경우 저작권법이나 라이센스 제한을 위반할 수 있습니다. –
가장 쉬운 방법은 AddFontMemResourceEx을 사용하여 글꼴이 리소스로 EXE에 포함되어있는 경우 사용하는 것입니다. 그것은 글꼴을 파일에 저장할 필요없이 메모리에서 직접 글꼴을로드 할 수 있습니다.
코드 예 :
function LoadResourceFont(const ResourceName, FontName : string) : boolean;
var
ResStream : tResourceStream;
FontsCount : integer;
hFont : tHandle;
begin
ResStream := tResourceStream.Create(hInstance, ResourceName, RT_RCDATA);
hFont := AddFontMemResourceEx(ResStream.Memory, ResStream.Size, nil, @FontsCount);
result := (hFont <> 0);
ResStream.Free();
end;
당신은 둘 다 할 수 있습니다. 나는 1 개의 질문이있다, 당신의 글꼴이다? 또는 재배포 할 수 있습니까? –
리소스로 포함시킬 수 있습니다. http://stackoverflow.com/questions/2305344/how-to-use-external-fonts –