2011-06-01 81 views
2

有人能告訴我如何獲取字體的字體名稱嗎?我怎樣才能取得具有字體名稱的字體的Windows名稱?獲取未安裝字體的字體和Windows名稱

像「arialblackno1.ttf」那樣有字體「arialblack」。

但我期待得到沒有安裝的字體的字體名稱,它只是在一個文件夾中。

+0

有趣的使用代碼格式:) – jpfollenius 2011-06-01 07:05:51

回答

0

你在你需要的不是安裝在Windows字體的名字作出的評論說。

有跡象表明,我能想到的這樣做的方法有兩種: -

無論哪種方式,你將需要爲這些庫找到Delphi包裝器。谷歌應該幫助。

似乎有一個FreeType綁定作爲AggPas的一部分。儘管這不是我嘗試過的。

+0

你知道任何包裝爲德爾福7 freetype項目任何人? – azrael11 2011-06-02 11:38:53

+0

Anwser更新:嘗試「AggPas」http://www.crossgl.com/aggpas/aggpas-download.htm – Roddy 2011-06-02 11:47:13

+0

謝謝Roddy ...我檢查它... – azrael11 2011-06-02 17:19:09

0

其實,我有什麼你問一個小想法(條款!)

procedure TForm14.FormCreate(Sender: TObject); 
var 
    DC: HDC; 
    Font: HFONT; 
    LogFont: TLogFont; 
begin 
    DC := GetDC(HWND_DESKTOP); 
    Win32Check(DC <> 0); 
    Font := GetCurrentObject(DC, OBJ_FONT); 
    Win32Check(Font <> 0); 
    Win32Check(GetObject(Font, SizeOf(LogFont), @LogFont) > 0); 
    ShowMessage(LogFont.lfFaceName); 
    Win32Check(ReleaseDC(HWND_DESKTOP, DC) = 1); 
end; 
+0

感謝您的回答user759588 ...此過程給出了安裝在窗口中的字體的字體名稱......但我期待獲得字體的字體名稱沒有安裝它只是在一個文件夾中......並沒有告訴上面的抱歉....另一個問題是如何獲得像「arialblackno1.ttf」這樣的Windows字體名稱字體=「arialblack」...對不起,我的朋友,我的英語是可怕的... – azrael11 2011-06-01 10:14:08