cocoa - 设置 NSTextView 的字体

标签 cocoa nstextview fonts

我正在子类化 NSTextView 以设置它的默认字体:

PTNfoEditField.h

@interface PTNfoEditField : NSTextView {

}

@end

PTNfoEditField.m

@implementation PTNfoEditField

-(id)init {
    if(self = [super init]) {
        [[self textStorage] setFont:[NSFont fontWithName:@"Courier" size:10]];
    }

    return self;
}

@end

但是,这不起作用,我不知道如何以不同的方式做到这一点。谁能帮我?谢谢。

最佳答案

View 的初始值设定项不是 init,而是 initWithFrame:。此外,如果您的 View 位于 Nib 中,您还必须重写 initWithCoder:。不要忘记确保您的 View 实际上是 PTNfoEditField,而不是常规的 NSTextView。

此外,您应该使用[NSFont userFixedPitchFontOfSize:0.0]来设置字体。您不应对字体名称(用户可能更喜欢更好的等宽字体)和字体大小(用户可能会发现 10 磅难以阅读或将抗锯齿阈值设置在其上方)进行硬编码。

关于cocoa - 设置 NSTextView 的字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3038071/

相关文章:

ios - 从类中删除所有观察者

c++ - 填充色和背景色的区别

cocoa - 如何在 Cocoa 中自动滚动 NSTextView 以在窗口上垂直居中文本?

html - 更改博客中帖子的字体大小

css - 谷歌字体在 chrome 中被视为不安全的脚本

objective-c - 字符串到 int - cocoa ,objective-c

objective-c - cocoa/osx - 阻止 NSTextView 扩展超过其框架尺寸

objective-c - 扩展 NSTextView 还是实现 NSTextInputClient?

css - 更改字体后最后一个字换行

IOS UIButton 与动画 gif 图像