drawUnderline(forGlyphRange:underlineType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:)
Draws underlining for the glyphs in a specified range.
Declaration
func drawUnderline(forGlyphRange glyphRange: NSRange, underlineType underlineVal: NSUnderlineStyle, baselineOffset: CGFloat, lineFragmentRect lineRect: NSRect, lineFragmentGlyphRange lineGlyphRange: NSRange, containerOrigin: NSPoint)Parameters
- glyphRange:
A range of glyphs, which must belong to a single line fragment rectangle (as returned by Linefragmentrect(forglyphat:effectiverange:)).
- underlineVal:
The style of underlining to draw. This value is a mask derived from the value for Underlinestyle—for example,
(NSUnderlinePatternDash | NSUnderlineStyleThick). Subclasses can define custom underlining styles. - baselineOffset:
Specifies the distance from the bottom of the bounding box of the specified glyphs in the specified range to their baseline.
- lineRect:
The line fragment rectangle containing the glyphs to draw underlining for.
- lineGlyphRange:
The range of all glyphs within
lineRect. - containerOrigin:
The origin of the
lineRectNSTextContainerin itsNSTextView.
Discussion
This method is invoked automatically by underlineGlyphRange(_:underlineType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:); you should rarely need to invoke it directly. This method’s underlineVal parameter does not take account of any setting forNSUnderlineByWordMask because that’s taken care of by underlineGlyphRange(_:underlineType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:).
See Also
Drawing
drawBackground(forGlyphRange:at:)drawGlyphs(forGlyphRange:at:)drawStrikethrough(forGlyphRange:strikethroughType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:)fillBackgroundRectArray(_:count:forCharacterRange:color:)showCGGlyphs(_:positions:count:font:textMatrix:attributes:in:)strikethroughGlyphRange(_:strikethroughType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:)underlineGlyphRange(_:underlineType:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:)