2015-12-04 4 views
10

Я пытаюсь понять, как изменить стиль шрифта на «Тонкий». Кто-нибудь знает как это сделать?Как изменить стиль шрифта в Swift

Вот моя лучшая попытка, но она не работает:

m.font = UIFont(name: "Apple SD Gothic Neo", style: "Thin", size: 8.0) 

ответ

14

Как я видел это AppleSDGothicNeo-Thin, без пробелов и тире стиль. Так что ваш код будет

m.font = UIFont(name: "AppleSDGothicNeo-Thin", size: 8.0) 

Edit:

Я пришел, чтобы понять, почему вы используете шрифт таким образом.

Если вы добавляете собственный шрифт в свой проект, он имеет имя «SuperAwesomeFont-Light.ttf». Поэтому имеет смысл, что вы просто используете имя файла для имени шрифта.

2

Это может работать:

let font = UIFont(name: "HelveticaNeue-Thin", size: 16.0)! 
+0

Порекомендуйте, как @ c.o'rear может добавить это в свой метод. – lukaivicev

+0

Вам обязательно нужно развернуть его? Возвращает ли он необязательный? – Cesare

6

У вас есть проблемы с именем шрифта.

Сначала найдите собственное имя шрифта и используйте его.

Прежде всего напечатайте их все имена. И затем используйте. Пример кода показывает все установленные шрифты приложения.

func printFonts() { 
    let fontFamilyNames = UIFont.familyNames() 
    for familyName in fontFamilyNames { 
     print("------------------------------") 
     print("Font Family Name = [\(familyName)]") 
     let names = UIFont.fontNamesForFamilyName(familyName) 
     print("Font Names = [\(names)]") 
    } 
} 

И после того, как вы обнаружили шрифт вы можете установить, как:

m.font = UIFont(name: "AppleSDGothicNeo-Thin", size: 8.0) 
2

Поместите это в детскую площадку, чтобы получить все правильные имена шрифтов доступны (обновляется Swift 3.0 на основе олег)

//: Playground - noun: a place where people can play 

import UIKit 

func printFonts() { 
    let fontFamilyNames = UIFont.familyNames 
    for familyName in fontFamilyNames { 
     print("------------------------------") 
     print("Font Family Name = [\(familyName)]") 
     let names = UIFont.fontNames(forFamilyName: familyName) 
     print("Font Names = [\(names)]") 
    } 
} 

printFonts() 
0

lblDes.font = UIFont (название: "HelveticaNeue-Ультралайт", размер : 14.0)

Смежные вопросы