Contents

Introduction to Text System Storage Layer Overview

Explains how the Cocoa text system stores the information it needs to lay out text.

Who Should Read This Document

You should read this document if you need to work directly with the text storage layer. For example, you may need to change the text programmatically in a text storage object or extend its capabilities.

To understand this material you should have a general understanding of Cocoa programming conventions. You should also have read <!--a target="_self" -->Text System Overview<!--/a--> .

Organization of This Document

This document contains the following articles:

The Storage Layer: The NSTextStorage Class provides a general introduction to the capabilities of text storage objects.

Layout Geometry: The NSTextContainer Class explains how text containers define the area in which the system lays out text and how they interact with other text system objects.

Creating Text Storage explains how you create and set up text storage objects.

Changing Text Storage describes the process of editing text in a text storage object programmatically.

Displaying a Text Container explains how you can display the text in a text storage object in a text view or other NSView object.

Calculating Region, Bounding Rectangle, and Inset discusses how to define a text container’s text layout area.

Tracking the Size of a Text View explains how you can set up a text container so that its geometry interacts with that of its associated text view.

Creating a Subclass of NSTextStorage discusses the requirements of NSTextStorage subclasses.

See Also

For further reading, refer to the following documents:

Attributed String Programming Guide provides information about the attributed string objects on which NSTextStorage is built. NSTextStorage is a subclass of NSMutableAttributedString .

Text Layout Programming Guide describes the layout process involving text storage, text container, text view, and layout manager objects.

Next

Copyright © 1997, 2012 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2012-09-19