Xcode 8引入了一种名为'SF Mono'的新字体.
这是我个人觉得非常易读的字体,我想在一个字体中使用它NSTextView.但是,要为a设置字体NSTextView,需要使用NSFont对象.问题是我似乎无法SF Mono在可用字体列表中找到字体NSFontManager.shared().availableFonts.
有谁知道为其字体SF Mono初始化NSFont(NSFont(name: String, size: CGFloat))的程序名称是什么?
看起来很简单,我根本setFont:无法找到任何方法(不工作):
NSTextViewNSFont.提示:(很明显,但无论如何......)如果用户添加任何文本,新文本应该"继承"完全相同的样式......
我已经浏览了这些SO帖子:
我尝试完全相同(多次重新检查),但我无法在我的Mac App中添加自定义字体.
所有细节都显示在附图中.
Plist已更新:(经过尝试的字体和字体/两者)
在App Bundle中,它位于Fonts文件夹路径中:

但我的代码无法找到并读取字体:

任何帮助/指出我的错误都非常感谢.
我想让NSFont描述Arial,正常,高度为30pt.到目前为止,我有:
NSNumber *weight = [NSNumber numberWithFloat:1.0];
NSNumber *slant = [NSNumber numberWithFloat:1.0];
NSDictionary *fontTraits = [NSDictionary dictionaryWithObjectsAndKeys: weight, NSFontWeightTrait, slant, NSFontSlantTrait, nil];
NSDictionary *fontAttributes = [NSDictionary dictionaryWithObjectsAndKeys: @"Arial", NSFontFaceAttribute,
fontTraits, NSFontTraitsAttribute, nil];
NSFontDescriptor *fontDescriptor = [NSFontDescriptor fontDescriptorWithFontAttributes: fontAttributes];
NSFont *largeFont = [NSFont fontWithDescriptor: fontDescriptor size: 30];
Run Code Online (Sandbox Code Playgroud)
但由此产生的NSFont尺寸不合适.我可以放任何我想要的尺寸,它们看起来都一样.
我遵循了一堆教程,但没有用:我只是想向macOS应用添加自定义字体。
我基本上尝试的是:
.ttf字体文件到我的项目:目标组成情况,我也确保文件是使用拷贝制作Copy Files中Bundle Phases。编译后,我可以看到所有文件都在捆绑包中。这样看来效果很好。Info.plist:我为要添加的每个字体文件(值)添加Fonts provided by application并创建了一个项目myFont.tff。
我确保使用正确的字体名称。我在系统上安装了字体,并使用Interface Builder配置了Label,以便它使用所需的字体。我印了它的价值print(myLabel.font.fontName)。
令人困惑:如果将我要添加到应用程序的完全相同的字体文件安装在系统Fontbook中并激活,则一切正常。当我停用它时,它不起作用。对我来说,这表明我使用的是正确的字体名称。
我找到ATSApplicationFontsPath并尝试将其添加到中Info.plist,但没有使用路径(由文档推荐)或类似.(似乎对某些人有用的)值确定。
感谢任何帮助!
我一直无法找到 的有效值NSFont.TextStyleOptionKey。
更具体地说,我想使用NSFont.preferredFont(forTextStyle:options:)动态(动态点大小)类型,但我想更改字体的粗细。
我正在写单元测试检查生成的NSAttributedString的格式.
我可以像这样提取字体:
if let font = attributedString.attributesAtIndex(0, effectiveRange: nil) as? NSFont {
...
}
Run Code Online (Sandbox Code Playgroud)
鉴于此NSFont实例,我如何检查它是否是粗体?
我试图在互联网上找到一些东西,但是现在我没有答案,所以如果你可以帮助我会很棒!到目前为止我有一个NSFont对象,但我想要名称(作为NSString)和字体的大小,所以我可以输出!就像是
[NSFont fontWithName:@"Menlo" size:11];
Run Code Online (Sandbox Code Playgroud)
只有倒退,所以我得到了名字"Menlo"和11号.
感谢帮助!来自德国的Xcoder
我正在尝试更改我创建的 NSButton 子类的字体。当我使用以下代码设置实际按钮时,我可以设置字体:
[button setFont:[NSFont fontWithName:@"Courier" size:15]];
Run Code Online (Sandbox Code Playgroud)
但是,当我稍后尝试在我的应用程序中执行此操作时,它不起作用。
我试图让用户选择一种新字体;一旦他们完成此操作,我想更新此按钮以使用所选字体。
我知道我的字体选择过程不是问题,因为我可以将其他 UI 项目的字体更改为用户选择的字体。
此外,我认为问题是由于我的子类正在经历 CABasicAnimation,但当我删除动画时,它仍然不起作用。此外,我什至可以在动画运行时更改按钮的字体颜色。
最后,我确定我的插座连接正确。
那么问题可能出在哪里呢?过去有人遇到过类似的问题吗?
在搜索问题的解决方案时,我发现了NSFont和UIFont,
两者之间的基本区别是什么以及我们何时应该使用?
我试图在 Swift 中NSFontSymbolicTraits按位比较和。NSFontBoldTrait
在 Objective-C 中,它会像这样完成:
BOOL isBold = (fontDescriptorSymbolicTraits & UIFontDescriptorTraitBold);
Run Code Online (Sandbox Code Playgroud)
所以我想在 Swift 中应该是这样的:
let isBold:Bool = font.fontDescriptor.symbolicTraits & NSFontBoldTrait
Run Code Online (Sandbox Code Playgroud)
...但是这会导致以下错误:
无法使用类型为“(NSFontSymbolicTraits, Int)”的参数列表调用“&”
有人知道我错过了什么吗?任何帮助将不胜感激。
注意事项:
NSFontDescriptor和其他NSFont相关类。NSFont*Trait常量在 Swift 中的实现方式不同?甚至不确定是否是这样。我已经阅读了关于这个主题的大部分问题和答案,它们似乎都适用于自定义字体,而不是系统字体.
我使用Interface builder并在SpriteKit场景上有一个SKLabelNode,我将字体更改为'Lithos Pro'.它在IB中正确显示,但在模拟器中运行时会显示通用字体.我还以编程方式向场景中添加了一个UITextField,尝试使用相同的字体,但也无法使用.
据我所知,这是作为NSFont捆绑包的一部分,但只是为了确认我将TTF文件添加到项目中并将它们包含在我的目标资源中.仍然没有去.
思考?
nameField = UITextField(frame: CGRect(x: view.center.x - 150,y:view.center.y - 25,width: 300, height: 50))
nameField.font = UIFont(name: "Lithos Pro Regular", size: 25) //I've tried 'Lithos Pro, LithosPro, and Lithos Pro Regular'
nameField.textAlignment = .center
nameField.borderStyle = UITextBorderStyle.roundedRect
nameField.autocorrectionType = UITextAutocorrectionType.no
nameField.keyboardType = UIKeyboardType.default
nameField.returnKeyType = UIReturnKeyType.done
nameField.clearButtonMode = UITextFieldViewMode.whileEditing;
nameField.contentVerticalAlignment = UIControlContentVerticalAlignment.center
view.addSubview(nameField)
Run Code Online (Sandbox Code Playgroud) nsfont ×12
swift ×6
objective-c ×5
cocoa ×4
macos ×4
xcode ×2
appkit ×1
fonts ×1
info.plist ×1
ios ×1
nsbutton ×1
nsfontpanel ×1
nsstring ×1
nstextview ×1
sprite-kit ×1
uifont ×1