是否有方法检查系统是否安装了字符串名称的NSFont?如何确定在Objective-C的Mac OSX机器上是否安装了NSFont?
3
A
回答
4
检查它是否存在这个数组中:通过调用
[fonts containsObject:@"Times"];
containsObject
NSArray *fonts = [[NSFontManager sharedFontManager] availableFontFamilies];
使用isEqual:
方法来比较两个对象。因为您知道fonts
阵列中的每个对象都是NSString
,您知道如果阵列包含@"Times"
,则会得到YES
,如果不包含则为NO
。
0
你应该参考
查找字体系列(可能包括多种字体(样式)
NSFontDescriptor *helveticaNeueFamily =
[NSFontDescriptor fontDescriptorWithFontAttributes:
@{ NSFontFamilyAttribute: @"Helvetica Neue" }];
NSArray *matches =
[helveticaNeueFamily matchingFontDescriptorsWithMandatoryKeys: nil];
,然后你也可以检查粗体,斜体, (确切名称)
NSFontDescriptor *fontDescriptor =
[NSFontDescriptor fontDescriptorWithFontAttributes:
@{ NSFontNameAttribute: @"Bank Gothic Medium" }];
NSArray *matches =
[fontDescriptor matchingFontDescriptorsWithMandatoryKeys: nil];
like
- (BOOL)isFontNameInstalledInSystem {
if (self.fontName == nil) {
return NO;
}
NSFontDescriptor *fontDescriptor = [NSFontDescriptor fontDescriptorWithFontAttributes:@{NSFontNameAttribute:self.fontName}];
NSArray *matches = [fontDescriptor matchingFontDescriptorsWithMandatoryKeys: nil];
return ([matches count] > 0);
}
你也可能需要使用(但一定要在正确的格式的字体名称) 注意,这个保险业监督多一点资源密集型
- (BOOL)isFontNameInstalledInSystem {
return ([NSFont fontWithName:self.fontName size:[NSFont systemFontSize]]) != nil;
}
相关问题
- 1. 如何在mac osx上安装macports pyside
- 2. 如何在Mac OSX Lion上安装libspotify?
- 3. 如何在Mac OSX上安装flask-mysqldb?
- 4. 如何在mac osx上安装librados?
- 5. 如何在Mac OSX上安装YAWS
- 6. 如何在mac osx上安装libksba?
- 7. 如何在Mac OSX上安装paramiko?
- 8. 在Mac OSX上安装Pandas
- 9. 在Mac OSX上安装BeautifulSoup
- 10. 在mac osx上安装sqlite3?
- 11. 在Mac OSX上安装mod_mono
- 12. OSX上安装了scala_home homebrew?
- 13. 安装和Mac OSX上
- 14. 是否在MAC OSX上预装了Java运行时?
- 15. 如何检查PyQt5在Mac上是否正确安装?
- 16. 如何检查wheather mysql是否安装在mac机器中?
- 17. 如何知道我的Mac上是否安装了ifort(雪豹)?
- 18. 如何确定驱动器是否安装了TrueCrypt?
- 19. Intellij Idea 8.1.x是否安装并在Mac OSX 10.6上运行?
- 20. 是否可以在Mac OSX 10.11上安装lapack?
- 21. ODOO在mac osx上的安装
- 22. Dart在Mac/OSX上的安装/设置
- 23. 在Mac OSX上安装ntlk的问题
- 24. 在我的Mac上安装channelflow OsX
- 25. 如何在virtualbox上安装osx sierra(在我的mac上)
- 26. 确定是否安装了WebSphere Portal
- 27. 确定是否安装了Flash OCX?
- 28. 确定是否安装了SqlLocalDB
- 29. 如何在osx机器上安装在php中使用的“locale”?
- 30. 如何确定用户是否在Mac上设置了密码?
我怎么会去通过阵列检查?我需要使用for语句吗? – 2010-12-03 00:00:28