1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
module Data.Text.ParagraphLayout.Span (Span(..))
where
import Data.Text.Foreign (I8)
-- Paragraph is broken into spans by the caller.
--
-- Each span could have a different font family, size, style, text decoration,
-- colour, language, etc.
--
-- TODO: Add all relevant attributes.
--
data Span = Span
{ spanLength :: I8
-- ^ Byte offset to the next span or the end of the paragraph text.
, spanLanguage :: String
-- ^ Used for selecting the appropriate glyphs and line breaking rules.
}
deriving (Show)