Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/extensions/Variables/includes/ExtVariables.php on line 198
UIFont - iPhone Development Wiki

UIFont

From iPhone Development Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Languages: English • français

UIFont is a class representing a font face and the font size. This class is built on top of GSFont.

Default font families

Family Normal Bold Italic Bold-Italic Example
AppleGothic AppleGothic Korean-한국어-韓國語
Hiragino Kaku Gothic ProN HiraKakuProN-W3 HiraKakuProN-W6 Japanese-にほんご-ニヒンゴ-日本語
Arial Unicode MS ArialUnicodeMS Unicode-AMZamz157½ßĽΔΩθφДЫжю
Heiti K STHeitiK-Light STHeitiK-Medium Korean-한국어-韓國語
DB LCD Temp DBLCDTempBlack 0123456789abcdef
Helvetica Helvetica Helvetica-Bold Helvetica-Oblique Helvetica-BoldOblique Latin-AMZamz157½ßĽΔΩθφДЫжю
Marker Felt MarkerFelt-Thin Latin-AMZamz157½ßĽΔΩθφДЫжю
Times New Roman TimesNewRomanPSMT TimesNewRomanPS-BoldMT TimesNewRomanPS-ItalicMT TimesNewRomanPS-BoldItalicMT Latin-AMZamz157½ßĽΔΩθφДЫжю
Verdana Verdana Verdana-Bold Verdana-Italic Verdana-BoldItalic Latin-AMZamz157½ßĽΔΩθφДЫжю
Georgia Georgia Georgia-Bold Georgia-Italic Georgia-BoldItalic Latin-AMZamz157½ßĽΔΩθφДЫжю
Arial Rounded MT Bold ArialRoundedMTBold Latin-AMZamz157½ßĽΔΩθφДЫжю
Trebuchet MS TrebuchetMS TrebuchetMS-Bold TrebuchetMS-Italic Trebuchet-BoldItalic Latin-AMZamz157½ßĽΔΩθφДЫжю
Heiti TC STHeitiTC-Light STHeitiTC-Medium Traditional Chinese-繁體中文
Geeza Pro GeezaPro GeezaPro-Bold Arabic-العربية/Farsi-فارسی
Courier Courier Courier-Bold Courier-Oblique Courier-BoldOblique Latin-AMZamz157½ßĽΔΩθφДЫжю
Arial ArialMT Arial-BoldMT Arial-ItalicMT Arial-BoldItalicMT Latin-AMZamz157½ßĽΔΩθφДЫжю
Heiti J STHeitiJ-Light STHeitiJ-Medium Japanese-にほんご-ニヒンゴ-日本語
Arial Hebrew ArialHebrew ArialHebrew-Bold Hebrew-עִבְרִית
Courier New CourierNewPSMT CourierNewPS-BoldMT CourierNewPS-ItalicMT CourierNewPS-BoldItalicMT Latin-AMZamz157½ßĽΔΩθφДЫжю
Zapfino Zapfino Latin-AMZamz157½ßĽΔΩθφДЫжю
American Typewriter AmericanTypewriter AmericanTypewriter-Bold Latin-AMZamz157½ßĽΔΩθφДЫжю
Heiti SC STHeitiSC-Light STHeitiSC-Medium Simplified Chinese-简体中文
Helvetica Neue HelveticaNeue HelveticaNeue-Bold Latin-AMZamz157½ßĽΔΩθφДЫжю
Thonburi Thonburi Thonburi-Bold Thai-ภาษาไทย

Default font sizes

There are 4 font sizes that can be obtained using +[UIFont someSize]. The last 2 are conventional values.

Name Value
smallSystemFontSize 12
systemFontSize 14
labelFontSize 17
buttonFontSize 18
Default font size of UIButton 15
Default font size of UITextField 12

Undocumented methods

+fontWithFamilyName:traits:size:

Signature +(UIFont*)fontWithFamilyName:(NSString*)familyName traits:(GSFontTraitMask)traits size:(CGFloat)fontSize;
Available in 2.0 –

Returns a font with specific family name, traits (bold/italic) and font size. For example:

// Equivalent to [UIFont fontWithName:@"Arial-BoldMT" size:24]
UIFont* font = [UIFont fontWithFamilyName:@"Arial" traits:GSBoldFontMask size:24];

+fontWithMarkupDescription:

Signature +(UIFont*)fontWithMarkupDescription:(NSString*)markupDescription;
Available in 2.0 —

Create a font using a CSS font description, e.g.

// Equivalent to [UIFont fontWithName:@"Arial-BoldMT" size:24]
UIFont* font = [UIFont fontWithMarkupDescription:@"font-family: Arial; font-size: 24px; font-weight: bold;"];

Unlike real CSS rules there are heavy restrictions on the "markup description":

  • The font-family rule must be exact. A list of fonts like Arial, Helvetica, sans-serif will not be supported by UIKit, and will always return nil regardless whether any font in the list is available.
  • The unit of font-size will always be interpreted as px. Names such as font-size: large will be considered as 0px.
  • font-weight can only be bold or not.
  • font-style can only be italic or not. In particular, oblique is not recognized and treated as normal.

-traits

Signature -(GSFontTraitMask)traits;
Available in 2.0 –

Returns the traits (bold/italic) of the font.

-isFixedPitch

Signature -(BOOL)isFixedPitch;
Available in 2.0 –

Returns whether the font is monospaced or not.

-markupDescription

Signature -(NSString*)markupDescription;
Available in 2.0 –

Returns the CSS rules that can reproduce this font.

References