NSLayoutManager Class Reference
PDF
Overview
Text Antialiasing
Thread Safety of NSLayoutManager
Noncontiguous Layout
Adopted Protocols
Tasks
Initializing
Setting the Text Storage
Setting Text Containers
Setting the Glyph Generator
Invalidating Glyphs and Layout
Enabling Background Layout
Accessing Glyphs
Mapping Characters to Glyphs
Setting Glyph Attributes
Handling Layout for Text Containers
Handling Line Fragment Rectangles
Laying Out Glyphs
Handling Layout for Text Blocks
Displaying Special Glyphs
Controlling Hyphenation
Finding Characters and Glyphs Not Laid Out
Using Screen Fonts
Handling Rulers
Managing the Responder Chain
Drawing
Accessing the Delegate
Accessing the Typesetter
Managing Typesetter Compatibility
Managing Temporary Attribute Support
Managing Noncontiguous Layout
Accessing the Font Leading
Instance Methods
addTemporaryAttribute:value:forCharacterRange:
addTemporaryAttributes:forCharacterRange:
addTextContainer:
allowsNonContiguousLayout
attachmentSizeForGlyphAtIndex:
attributedString
backgroundLayoutEnabled
boundingRectForGlyphRange:inTextContainer:
boundsRectForTextBlock:atIndex:effectiveRange:
boundsRectForTextBlock:glyphRange:
characterIndexForGlyphAtIndex:
characterRangeForGlyphRange:actualGlyphRange:
defaultAttachmentScaling
defaultBaselineOffsetForFont:
defaultLineHeightForFont:
delegate
deleteGlyphsInRange:
drawBackgroundForGlyphRange:atPoint:
drawGlyphsForGlyphRange:atPoint:
drawsOutsideLineFragmentForGlyphAtIndex:
drawStrikethroughForGlyphRange:strikethroughType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:
drawUnderlineForGlyphRange:underlineType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:
ensureGlyphsForCharacterRange:
ensureGlyphsForGlyphRange:
ensureLayoutForBoundingRect:inTextContainer:
ensureLayoutForCharacterRange:
ensureLayoutForGlyphRange:
ensureLayoutForTextContainer:
extraLineFragmentRect
extraLineFragmentTextContainer
extraLineFragmentUsedRect
firstTextView
firstUnlaidCharacterIndex
firstUnlaidGlyphIndex
fractionOfDistanceThroughGlyphForPoint:inTextContainer:
getFirstUnlaidCharacterIndex:glyphIndex:
getGlyphs:range:
getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:
getGlyphsInRange:glyphs:characterIndexes:glyphInscriptions:elasticBits:bidiLevels:
getLineFragmentInsertionPointsForCharacterAtIndex:alternatePositions:inDisplayOrder:positions:characterIndexes:
glyphAtIndex:
glyphAtIndex:isValidIndex:
glyphGenerator
glyphIndexForCharacterAtIndex:
glyphIndexForPoint:inTextContainer:
glyphIndexForPoint:inTextContainer:fractionOfDistanceThroughGlyph:
glyphRangeForBoundingRect:inTextContainer:
glyphRangeForBoundingRectWithoutAdditionalLayout:inTextContainer:
glyphRangeForCharacterRange:actualCharacterRange:
glyphRangeForTextContainer:
hasNonContiguousLayout
hyphenationFactor
init
insertGlyph:atGlyphIndex:characterIndex:
insertGlyphs:length:forStartingGlyphAtIndex:characterIndex:
insertTextContainer:atIndex:
intAttribute:forGlyphAtIndex:
invalidateDisplayForCharacterRange:
invalidateDisplayForGlyphRange:
invalidateGlyphsForCharacterRange:changeInLength:actualCharacterRange:
invalidateGlyphsOnLayoutInvalidationForGlyphRange:
invalidateLayoutForCharacterRange:actualCharacterRange:
invalidateLayoutForCharacterRange:isSoft:actualCharacterRange:
isValidGlyphIndex:
layoutManagerOwnsFirstResponderInWindow:
layoutOptions
layoutRectForTextBlock:atIndex:effectiveRange:
layoutRectForTextBlock:glyphRange:
lineFragmentRectForGlyphAtIndex:effectiveRange:
lineFragmentRectForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:
lineFragmentUsedRectForGlyphAtIndex:effectiveRange:
lineFragmentUsedRectForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:
locationForGlyphAtIndex:
notShownAttributeForGlyphAtIndex:
numberOfGlyphs
rangeOfNominallySpacedGlyphsContainingIndex:
rectArrayForCharacterRange:withinSelectedCharacterRange:inTextContainer:rectCount:
rectArrayForGlyphRange:withinSelectedGlyphRange:inTextContainer:rectCount:
removeTemporaryAttribute:forCharacterRange:
removeTextContainerAtIndex:
replaceGlyphAtIndex:withGlyph:
replaceTextStorage:
rulerAccessoryViewForTextView:paragraphStyle:ruler:enabled:
rulerMarkersForTextView:paragraphStyle:ruler:
setAllowsNonContiguousLayout:
setAttachmentSize:forGlyphRange:
setBackgroundLayoutEnabled:
setBoundsRect:forTextBlock:glyphRange:
setCharacterIndex:forGlyphAtIndex:
setDefaultAttachmentScaling:
setDelegate:
setDrawsOutsideLineFragment:forGlyphAtIndex:
setExtraLineFragmentRect:usedRect:textContainer:
setGlyphGenerator:
setHyphenationFactor:
setIntAttribute:value:forGlyphAtIndex:
setLayoutRect:forTextBlock:glyphRange:
setLineFragmentRect:forGlyphRange:usedRect:
setLocation:forStartOfGlyphRange:
setLocations:startingGlyphIndexes:count:forGlyphRange:
setNotShownAttribute:forGlyphAtIndex:
setShowsControlCharacters:
setShowsInvisibleCharacters:
setTemporaryAttributes:forCharacterRange:
setTextContainer:forGlyphRange:
setTextStorage:
setTypesetter:
setTypesetterBehavior:
setUsesFontLeading:
setUsesScreenFonts:
showAttachmentCell:inRect:characterIndex:
showPackedGlyphs:length:glyphRange:atPoint:font:color:printingAdjustment:
showsControlCharacters
showsInvisibleCharacters
strikethroughGlyphRange:strikethroughType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:
substituteFontForFont:
temporaryAttribute:atCharacterIndex:effectiveRange:
temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:
temporaryAttributesAtCharacterIndex:effectiveRange:
temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:
textContainerChangedGeometry:
textContainerChangedTextView:
textContainerForGlyphAtIndex:effectiveRange:
textContainerForGlyphAtIndex:effectiveRange:withoutAdditionalLayout:
textContainers
textStorage
textStorage:edited:range:changeInLength:invalidatedRange:
textViewForBeginningOfSelection
typesetter
typesetterBehavior
underlineGlyphRange:underlineType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:
usedRectForTextContainer:
usesFontLeading
usesScreenFonts
Delegate Methods
layoutManager:didCompleteLayoutForTextContainer:atEnd:
layoutManager:shouldUseTemporaryAttributes:forDrawingToScreen:atCharacterIndex:effectiveRange:
layoutManagerDidInvalidateLayout:
Constants
Glyph Attributes
NSGlyphInscription
NSTypesetterBehavior
Revision History
Index
Companion Guides
Text System Overview
Text Layout Programming Guide for Cocoa