What is a monospace font in iOS?

IosFonts

Ios Problem Overview


I want a monospace font for my UILabel in my iOS application.

Unfortunately, I could not find one. Even "American Typewriter" was not actually monospaced. What is a monospace font available in XCode?

Ios Solutions


Solution 1 - Ios

iOS mono-spaced fonts

Courier  
Courier-Bold  
Courier-BoldOblique  
Courier-Oblique  
CourierNewPS-BoldItalicMT  
CourierNewPS-BoldMT  
CourierNewPS-ItalicMT  
CourierNewPSMT  
Menlo-Bold  
Menlo-BoldItalic  
Menlo-Italic  
Menlo-Regular

iosfonts.com maintain a list of all iOS fonts.

This webpage detects your installed system fonts and returns a fairly comprehensive list.

Solution 2 - Ios

Looking at an old listing of fonts shipped with iOS I see several one monospace fonts.

(eg. Andale Mono, Monaco, Courier New)


For 2018 it's only Menlo and Courier.

Solution 3 - Ios

If your intent is to display numbers and you don't care about the specific font used, you can do this:

UIFont.monospacedDigitSystemFontOfSize(
    UIFont.systemFontSize(),
    weight: UIFontWeightRegular)

Solution 4 - Ios

Adobe just released a nice monospaced font Source Code Pro in both TTF and OTF formats. It's licensed with the Open Font License so it is available for free use within applications, including commercial applications. You will need to add the font file as a resource in Xcode, by setting the UIAppFonts key in the info.plist to point to the SourceCodeProRegular.ttf file.

Now in your code you can set, for example:

    self.textView.font = [UIFont fontWithName:@"Source Code Pro" size:14];

Solution 5 - Ios

Expanding upon @reggie-pinkham's answer, I built this JS Bin for folks to use as a live test page; to save future reader's some time, here's a few screen shots using iOS Simulator on Mavericks:

iPad Air, iOS 8.1

ipad-air-ios-8.1

iPhone 6 plus, iOS 8.1

iphone-6-plus-ios-8.1

Solution 6 - Ios

As of iOS 13, San Francisco (SF) Mono is available. Couldn't find a way to set this in interface builder, but by code it's:

let font = UIFont.monospacedSystemFont(ofSize: 17.0, weight: .regular)

Solution 7 - Ios

If you're looking for a monospace font for numbers, then try "Helvetica Neue".

Solution 8 - Ios

A list of built-in fonts available on iOS: http://iosfonts.com. Courier and Menlo seem to be the only monospace fonts in there.

enter image description here

Solution 9 - Ios

SwiftUI

You can use Font's instance method monospacedDigit

Text("0123456789")
    .foregroundColor(.white)
    .font(Font.custom("San Francisco", size: 20).monospacedDigit())

Solution 10 - Ios

You can access system fonts in monospaced with the following Font factory method:

static func system(Font.TextStyle, design: Font.Design) -> Font

Example:

let monospacedBody = Font.system(.body, .monospaced)

Other usage:

let serifTitle = Font.system(.title, .serif)

Solution 11 - Ios

In the meantime there is a good Monospace font available from Apple, that can be downloaded here: Apple SFUI Here is how to add the fonts to Xcode: Add fonts to xcode

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionJustin CopelandView Question on Stackoverflow
Solution 1 - IosReggie PinkhamView Answer on Stackoverflow
Solution 2 - IoscodelarkView Answer on Stackoverflow
Solution 3 - IosManuelView Answer on Stackoverflow
Solution 4 - IosWil MacaulayView Answer on Stackoverflow
Solution 5 - IosmhulseView Answer on Stackoverflow
Solution 6 - Iosvin047View Answer on Stackoverflow
Solution 7 - IosC. BessView Answer on Stackoverflow
Solution 8 - IosKurt Van den BrandenView Answer on Stackoverflow
Solution 9 - IosLeo DabusView Answer on Stackoverflow
Solution 10 - IosLouis LacView Answer on Stackoverflow
Solution 11 - IosHecotView Answer on Stackoverflow