For iOS 7, Apple made a special modified version of Helvetica Thin/Light that has rounded periods and colons:
Compare this to using Helvetica-Neue Thin or Helvetica-Neue Light in Xcode:
Is it possible to develop apps with the special modified version with the rounded colons and periods?
EDIT: Turns out these round colons and periods are not custom designed by Apple, they are "character alternates" and you can see them in your favorite font glyph viewer.
Here's how to do it. Even reading the documentation, it's very unclear.
First, you have to get the characteristics of a font, which will give you the constants to use in your UIFontDescriptorFeatureSettingsAttribute
. I got mine from this post.
This gives you feature type identifier keys, and your options for their values, the feature selector identifier keys.
NSArray *timerDisplaySettings = @[
@{ UIFontFeatureTypeIdentifierKey: @(6),
UIFontFeatureSelectorIdentifierKey: @(1)
},
@{ UIFontFeatureTypeIdentifierKey: @(17),
UIFontFeatureSelectorIdentifierKey: @(1)
}];
then you create a font descriptor by adding to a descriptor - this way you can specify the font name and family via UIFont
:
UIFont *font = [UIFont fontWithName:@"HelveticaNeue-UltraLight" size:32];
UIFontDescriptor *originalDescriptor = [font fontDescriptor];
UIFontDescriptor *timerDescriptor =[originalDescriptor fontDescriptorByAddingAttributes: @{ UIFontDescriptorFeatureSettingsAttribute: timerDisplaySettings }];
Then, close the loop and create the font with your descriptor. (The size "0.0" simply means we aren't scaling it from its original size of 32.
UIFont *timerFont = [UIFont fontWithDescriptor: timerDescriptor size:0.0];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With