-- | Legacy interface for laying out paragraphs of plain text.
--
-- This interface only allows one font with a fixed line height to be used for
-- the entire paragraph. As a consequence, all lines will have the same height.
module Data.Text.ParagraphLayout.Plain
{-# DEPRECATED "Use \"Data.Text.ParagraphLayout.Rich\" instead." #-}
-- * Input paragraph
( Paragraph (Paragraph)
, LineHeight (Absolute, Normal)
, ParagraphOptions
, defaultParagraphOptions
-- ** Paragraph options
-- | These are record selectors that can be used for reading
-- as well as updating specific option fields.
, paragraphFont
, paragraphLineHeight
, paragraphMaxWidth
-- ** Text spans
, Span (Span, spanUserData, spanLength, spanOptions)
, SpanOptions
, defaultSpanOptions
-- ** Span options
-- | These are record selectors that can be used for reading
-- as well as updating specific option fields.
, spanLanguage
-- ** Verification
, paragraphSpanBounds
, paragraphSpanTexts
, paragraphText
-- * Output layout
, layoutPlain
, ParagraphLayout (ParagraphLayout, paragraphRect, spanLayouts)
, SpanLayout (SpanLayout)
, Fragment
( Fragment
, fragmentUserData
, fragmentLine
, fragmentAncestorBoxes
, fragmentRect
, fragmentPen
, fragmentGlyphs
)
, AncestorBox
( AncestorBox
, boxUserData
, boxLeftSpacing
, boxRightSpacing
, boxStartSpacing
, boxEndSpacing
)
)
where
import Data.Text.ParagraphLayout.Internal.AncestorBox
import Data.Text.ParagraphLayout.Internal.Fragment
import Data.Text.ParagraphLayout.Internal.LineHeight
import Data.Text.ParagraphLayout.Internal.ParagraphOptions
import Data.Text.ParagraphLayout.Internal.Plain
import Data.Text.ParagraphLayout.Internal.Plain.Paragraph
import Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout
import Data.Text.ParagraphLayout.Internal.Span