На мой взгляд, самый простой способ - использовать AddFontMemResourceEx в случае, если шрифт внедрен в качестве ресурса в EXE-файл. Это позволяет загружать шрифт непосредственно из памяти, не нужно сохранять шрифт в файл.
Пример кода:
function LoadResourceFont( const ResourceName : 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;