pbeck
pbeck

Reputation: 165

Text layout framework for iOS

Aside from Webviews, are there any text layout frameworks on iOS for custom views? OpenGL could work fine aswell as something UIView-based.

Think Metro UI-ish, and I'd really enjoy templates and some sort of adaptive capabilities for landscape, portrait, ipad vs iphone, etc.

Upvotes: 0

Views: 881

Answers (2)

David Hoerl
David Hoerl

Reputation: 41642

Check out DTRichTextEditor by Cocoanetics. They offer the free DTCoreText that I've used for over a year now with great success (to display HTML and rich text). This is one link I just found but you can just look at the Cocoanetics site too (DTCoreText is free, the editor has a cost to it).

Upvotes: 0

justin
justin

Reputation: 104698

CoreText.framework would be a good starting point. It's a 'Core' framework, which integrates well with CoreGraphics. If you want UIView-centric rendering, prepare to write some wrappers.

A high level alternative to CoreText.framework would be to use NSAttributedString in UITextViews (ios6 or greater).

Here's the high level overview:

Core Text provides a modern, low-level programming interface for laying out text and handling fonts. The Core Text layout engine is designed for high performance, ease of use, and close integration with Core Foundation. The text layout API provides high-quality typesetting, including character-to-glyph conversion, with ligatures, kerning, and so on. The complementary Core Text font technology provides automatic font substitution (cascading), font descriptors and collections, easy access to font metrics and glyph data, and many other features.

Multicore Considerations: All individual functions in Core Text are thread safe. Font objects (CTFont, CTFontDescriptor, and associated objects) can be used by simultaneously by multiple operations, work queues, or threads. However, the layout objects (CTTypesetter, CTFramesetter, CTRun, CTLine, CTFrame, and associated objects) should be used in a single operation, work queue, or thread.

Upvotes: 2

Related Questions