module Data.Text.ParagraphLayout.Rich
( Paragraph (Paragraph)
, constructParagraph
, BoxSpacing (BoxSpacingLeftRight)
, LineHeight (Absolute, Normal)
, ParagraphOptions
, defaultParagraphOptions
, paragraphLineHeight
, paragraphMaxWidth
, RootNode (RootBox)
, InnerNode (InlineBox, TextSequence)
, Box (Box)
, BoxOptions
, defaultBoxOptions
, TextOptions
, defaultTextOptions
, boxSpacing
, textFont
, textLineHeight
, textLanguage
, textDirection
, paragraphSpanBounds
, paragraphSpanTexts
, paragraphText
, layoutRich
, ParagraphLayout (ParagraphLayout, paragraphRect, paragraphFragments)
, Fragment
( Fragment
, fragmentUserData
, fragmentLine
, fragmentAncestorBoxes
, fragmentRect
, fragmentPen
, fragmentGlyphs
)
, fragmentSpacedRect
, AncestorBox
( AncestorBox
, boxUserData
, boxLeftEdge
, boxRightEdge
, boxStartEdge
, boxEndEdge
)
, BoxEdge (NoEdge, SpacedEdge)
)
where
import Data.Text.ParagraphLayout.Internal.AncestorBox
import Data.Text.ParagraphLayout.Internal.BoxOptions
import Data.Text.ParagraphLayout.Internal.Fragment
import Data.Text.ParagraphLayout.Internal.LineHeight
import Data.Text.ParagraphLayout.Internal.ParagraphOptions
import Data.Text.ParagraphLayout.Internal.Rich
import Data.Text.ParagraphLayout.Internal.Rich.Paragraph
import Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout
import Data.Text.ParagraphLayout.Internal.TextOptions
import Data.Text.ParagraphLayout.Internal.Tree