标签: uifont

你如何在Swift中设置字体样式?

我正在尝试为Swift开发,它进展顺利.我遇到的一个问题是找出如何在语言中以编程方式设置字体样式.

例如,在这个标签中,我编写了下面的代码,例如,我如何才能使它成为Helvetica Neue Ultralight?

label.font = UIFont (name: "Helvetica Neue", size: 30)
Run Code Online (Sandbox Code Playgroud)

uifont ios swift

51
推荐指数
4
解决办法
10万
查看次数

UIFont的点大小究竟是什么?

我正在努力准确地理解点大小的UIFont含义.它不是像素,它似乎不是点的标准定义,它们与1/72英寸相关.

我使用-[NSString sizeWithFont:]各种大小的字体计算出像素大小,并得到以下结果:

| Point Size | Pixel Size |
| ---------- | ---------- |
| 10.0       | 13.0       |
| 20.0       | 24.0       |
| 30.0       | 36.0       |
| 40.0       | 47.0       |
| 50.0       | 59.0       |
| 72.0       | 84.0       |
| 99.0       | 115.0      |
| 100.0      | 116.0      |
Run Code Online (Sandbox Code Playgroud)

(我做了[@"A" sizeWithFont:[UIFont systemFontOfSize:theSize]])

并且72.0看点大小,这不是1英寸,因为这是在DPI为163的设备上,所以1英寸将是163.0像素,对吧?

任何人都可以用UIFont术语解释什么是"点" ?即我的方法是错误的,如果我使用别的东西,我会看到有关字体的东西是72点的163像素?或者纯粹是从其他东西定义一个点?

fonts objective-c uikit uifont ios

49
推荐指数
2
解决办法
2万
查看次数

更改后导航栏按钮的字体

我希望能够设置我的应用程序导航栏后退按钮的字体,而不会做任何太疯狂的事情,并且不会丢失按钮的任何其他设计特征(即我想保留箭头).

现在我用它viewDidAppear:来设置普通条形按钮项的字体.

for (NSObject *view in self.navigationController.navigationBar.subviews) {
    if ([view isKindOfClass:[UIButton class]]) {
        [((UIButton*)view).titleLabel setFont:[UIFont 
                                 fontWithName:@"Gill Sans" 
                                         size:14.0]];
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这不会对后退按钮进行任何更改,无论UIViewController此代码应用于哪个(根,当前等).

objective-c uinavigationbar uibarbuttonitem uifont ios

47
推荐指数
2
解决办法
3万
查看次数

更改UISearchBar的字体大小

如何更改字体大小UISearchBar

编辑:
答案

for(int i =0; i<[searchbar.subviews count]; i++) {
        if([[searchbar.subviews objectAtIndex:i] isKindOfClass:[UITextField class]])
            [(UITextField*)[searchbar.subviews objectAtIndex:i] setFont:[UIFont fontWithName:@"Helvetica" size:12]];
    }
Run Code Online (Sandbox Code Playgroud)

谢谢
Pankaj

objective-c uisearchbar uifont ios

46
推荐指数
9
解决办法
3万
查看次数

自定义UIFont基线已移位

我遇到了自定义UIFonts的问题.我加载其中的6个(常规/粗体/ regularItalic/boldItalic中的字体A,浓缩/浓缩变量中的字体B).

但是,这是渲染时的内容: 在此输入图像描述

前两行是正常的,但最后一行表现出基线问题.

我已经尝试在FontLab中更改字体的UPM,上升器,下行器,x高度,以便它匹配第一个字体的值(正确呈现),但无济于事.我已经尝试将字体格式从OTF转换为TTF,没有运气.无论我尝试什么,它总是以这种方式呈现.

有任何人对此有经验吗?

truetype opentype uifont ios

42
推荐指数
2
解决办法
1万
查看次数

ios中的自定义字体不起作用

我想在我的ios应用程序中使用HelveticaNeue-UltraLight.我将字体文件作为资源添加到我的项目中,并在plist文件中添加"由应用程序提供的字体"键.文件名是HelveticaNeue.dfont,我已将其添加到密钥数组中.

当我检查可用字体时,我现在可以看到它...

  NSArray *fonts = [UIFont fontNamesForFamilyName:@"Helvetica Neue"];

for(NSString *string in fonts){
    NSLog(@"%@", string);
}

1-07-08 17:32:57.866 myApp[5159:207] HelveticaNeue-Bold
2011-07-08 17:32:57.866 myApp[5159:207] HelveticaNeue-CondensedBlack
2011-07-08 17:32:57.867 myApp[5159:207] HelveticaNeue-Medium
2011-07-08 17:32:57.867 myApp[5159:207] HelveticaNeue
2011-07-08 17:32:57.868 myApp[5159:207] HelveticaNeue-Light
2011-07-08 17:32:57.868 myApp[5159:207] HelveticaNeue-CondensedBold
2011-07-08 17:32:57.868 myApp[5159:207] HelveticaNeue-LightItalic
2011-07-08 17:32:57.869 myApp[5159:207] HelveticaNeue-UltraLightItalic
2011-07-08 17:32:57.869 myApp[5159:207] HelveticaNeue-UltraLight // HERE IT IS!
2011-07-08 17:32:57.869 myApp[5159:207] HelveticaNeue-BoldItalic
2011-07-08 17:32:57.870 myApp[5159:207] HelveticaNeue-Italic
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用[UIFont fontWithName:@"HelveticaNeue-UltraLight"尺寸:12]时,我只是得到了HelveticaNeue-Light ..

我没有收到任何错误或警告.请帮忙!

iphone cocoa-touch uifont custom-font ios

41
推荐指数
5
解决办法
4万
查看次数

你如何改变UIFont的颜色?

我在网上搜索过,但我无法得到一个好的答案,虽然我确信这很简单.有人可以告诉我如何做以下事项:制作一个名为"Helvetica-Bold"的UIFont,尺寸8.0和黑色.

我有名字和大小,但我无法弄清楚如何改变颜色:

UIFont *textFont = [UIFont fontWithName:@"Helvetica-Bold" size:8.0];
Run Code Online (Sandbox Code Playgroud)

谢谢!

iphone uifont ios

39
推荐指数
2
解决办法
4万
查看次数

如何更改UILabel/UIFont的字母间距?

我已经搜索了负载,但找不到答案.

我有一个正常的UILabel,这样定义:

    UILabel *totalColors = [[[UILabel alloc] initWithFrame:CGRectMake(5, 7, 120, 69)] autorelease];
    totalColors.text = [NSString stringWithFormat:@"%d", total];
    totalColors.font = [UIFont fontWithName:@"Arial-BoldMT" size:60];
    totalColors.textColor = [UIColor colorWithRed:221/255.0 green:221/255.0 blue:221/255.0 alpha:1.0];
    totalColors.backgroundColor = [UIColor clearColor];
    [self addSubview:totalColors];
Run Code Online (Sandbox Code Playgroud)

我希望字母之间的水平间距更紧,同时保持字体大小.

有没有办法做到这一点?这应该是一件非常基本的事情.

干杯,安德烈

更新:

所以我被迫这样做:

- (void) drawRect:(CGRect)rect 
{
    CGContextRef context = UIGraphicsGetCurrentContext();

    CGContextSelectFont (context, "Arial-BoldMT", 60, kCGEncodingMacRoman);
    CGContextSetCharacterSpacing (context, -10);
    CGContextSetTextDrawingMode (context, kCGTextFill);

    CGContextSetRGBFillColor(context, 221/255.0, 221/255.0, 221/255.0, 221/255.0);
    CGAffineTransform xform = CGAffineTransformMake(1.0, 0.0, 0.0, -1.0, 0.0, 0.0);
    CGContextSetTextMatrix(context, xform);

    char* result = malloc(17);
    sprintf(result, …
Run Code Online (Sandbox Code Playgroud)

iphone xcode spacing uilabel uifont

38
推荐指数
3
解决办法
5万
查看次数

如何获取字体大小或UIFont实例的粗体版本

如何获取UIFont实例的字体大小?

或者,如果有人可以为UIFont实现此方法?

- (UIFont *)boldFont;
Run Code Online (Sandbox Code Playgroud)

iphone font-size uifont ios

38
推荐指数
4
解决办法
4万
查看次数

-systemFontOfSize:和-boldSystemFontOfSize之间是否有中等重量字体:?

-systemFontOfSize太薄了,而boldSystemFontOfSize太粗了.我需要介于两者之间.

当我创建像这样的UIFont时:

[UIFont boldSystemFontOfSize:14];
Run Code Online (Sandbox Code Playgroud)

然后调试器打印此字体信息:

font-family:".Helvetica NeueUI"; font-weight:bold; font-style:normal; font-size:14px

有时字体具有中等字体粗细.如何创建此类型的字体,但中等重量?

iphone uifont ipad ios

36
推荐指数
5
解决办法
2万
查看次数