在OSX 10.6之前,ATSFontActivateFromFileSpecification/ATSFontActivateFromFileReference可用,可用於從文件加載字體。我在Core Text中找不到任何類似內容。如何使用核心文本從文件加載字體(TTF)?
13
A
回答
10
它看起來像是CTFontManagerCreateFontDescriptorsFromURL
是核心文本的替代品。
18
您可以通過CGFontRef
會得到一個字體文件CTFontRef
:
CFURLRef url = CFURLCreateWithFileSystemPath(kCFAllocatorDefault, CFSTR("/path/to/font"), kCFURLPOSIXPathStyle, false);
CGDataProviderRef dataProvider = CGDataProviderCreateWithURL(url);
CGFontRef theCGFont = CGFontCreateWithDataProvider(dataProvider);
CTFontRef theCTFont = CTFontCreateWithGraphicsFont(theCGFont);
CFRelease(theCGFont);
CFRelease(dataProvider);
CFRelease(url);
// do something with the CTFontRef here
CFRelease(theCTFont);
4
NSURL *fontURL = [[NSBundle mainBundle] URLForResource:@"Crystal" withExtension:@"ttf"];
assert(fontURL);
CFErrorRef error = NULL;
if (!CTFontManagerRegisterFontsForURL((__bridge CFURLRef)fontURL, kCTFontManagerScopeProcess, &error))
{
CFShow(error);
abort();
}
+1
這對我有效,謝謝! – MiMo 2013-07-27 17:07:59
相關問題
- 1. 如何使用webpack2加載ttf文件?
- 2. 合併TTF字體文件(使用CSS)
- 3. 使用Windows API加載ttf字體
- 4. 在BlackBerry OS 4.6中加載TTF文件字體
- 5. 讓gdb自動從核心文件加載二進制文件
- 6. 如何使用不同的ttf字體將utf8文本添加到圖像中? ?
- 7. PHP:如何從.ttf文件讀取字體的「標題」?
- 8. CSS - 字體不會從本地ttf文件導入?
- 9. (VB.net)如何爲私人字體使用.ttf(字體)文件收集
- 10. python:使用windows api來渲染使用ttf字體的文本
- 11. 核心文本 - 從ctrunref
- 12. 核心文本加載所有的系統字體成駐留內存
- 13. 確定TTF字體文件的名稱
- 14. 獲取.ttf文件的字體名稱
- 15. 如何用Swift旋轉核心文本?
- 16. 如何利用核心文本
- 17. Java libGDX,加載ttf字體時出錯
- 18. 加載TTF字體而不是OTF
- 19. wxPython:從文件加載字體
- 20. 從文件加載VIM字體
- 21. 如何使用一個按鈕從文件加載文本?
- 22. 從ttf文件中提取字體字符圖像
- 23. UIImageView從核心數據中存儲的文件路徑加載
- 24. 從核心數據加載
- 25. 核心文本可用性
- 26. 在PostScript文件中使用自定義TTF字體
- 27. CSS使用文件夾中的自定義字體(ttf)
- 28. 如何使用媒體查詢從HTML加載JavaScript文件
- 29. 使用Windows(TTF)字體?
- 30. 如何壓縮.ttf字體文件大小
而且它使[比核芯顯卡路線短碼(HTTPS://gist.github。 COM/1696100)。 – 2012-01-28 22:57:45