PeachDrawing.Text

PeachDrawing.Text.Layout Namespace

Classes  
LineBox One line of a laid-out paragraph.
LineFlow A paragraph laid out one line at a time in the room its caller gives each line: the tier for a caller that owns what the paragraph flows around (floats, columns, pages, a retry when a line’s height grows), where Layout(double) is for one that has a width and nothing else.
Paragraph Text prepared for laying out: its direction, scripts and joining resolved, its line break opportunities found. It does not depend on a width, so one paragraph can be laid out at any number of widths.
ParagraphBuilder Collects the text and the runs of a Paragraph.
ParagraphLayout A paragraph laid out at one width: an immutable snapshot of the lines, with the queries an editor or a hit test needs.
PlacedRun A stretch of one line that is drawn as one: text of one style, direction and script, shaped in one face.
TextRuler Measures a piece of text set in one face without laying out a paragraph.
Structs  
ContentWidths The narrowest and widest a paragraph can be laid out.
FlowCursor Where the next line of a paragraph starts. A cursor is an immutable value: laying a line out never changes the cursor it is given, one saved earlier can be laid out from again (a caller that undoes a line, or lays it out in another space, keeps the cursor from before it), and default is the start of the paragraph.
HyphenateLimitChars The smallest a hyphenated word and the pieces of it may be (CSS hyphenate-limit-chars).
InlineBox A box of a known size set in a paragraph like a single character (CSS: an atomic inline, such as an image or an inline block): it is never broken, takes part in line breaking with a break allowed before and after it (even next to a character that would suppress one, but not next to a joiner), and makes its line as tall as it needs. The paragraph’s text holds a U+FFFC (object replacement character) for it.
LineSpace The room a line of a paragraph has, as its caller worked it out: where the space starts and ends across the layout, how far the text is indented into it, and where the line’s top is.
ParagraphStyle How a paragraph as a whole is set.
RunStyle The look of a run of text in a paragraph.
TabSize The distance between tab stops (CSS tab-size): a multiple of the width of a space in the face the tab is set in, or a length. The default value, what default(TabSize) is, is 8 spaces.
TextIndent How far the start of a line is moved in from the edge of the paragraph (CSS text-indent), and which lines it moves. The distance is a length in layout units, so a caller that has a percentage works it out against its own width.
TextPosition A place in the text of a paragraph.
TextRange A stretch of the text of a paragraph, by UTF-16 offsets.
Enums  
HyphenateLimitLast Whether the last full line of a paragraph may be hyphenated (CSS hyphenate-limit-last).
Hyphens Whether and how words are broken with a hyphen at the end of a line (CSS hyphens).
LineEnd Why a line ends where it does.
OverflowWrap What may be done to a word that is too long for a line on its own (CSS overflow-wrap).
TextAffinity Which side of a boundary between two lines a position belongs to, when the text offset is both the end of one line and the start of the next.
TextAlign Where the text of a line is aligned within the available width (CSS text-align).
TextJustify Where a justified line gets its extra room (CSS text-justify).
TextOverflow What happens to a line whose text is wider than the width (CSS text-overflow).
VerticalAlign How an inline box sits on the line vertically (CSS vertical-align).