balkon: Text layout engine built on top of HarfBuzz.
Given an input text and formatting options, Balkón produces an inline layout with defined glyph positions and box coordinates, all within a containing unit called a paragraph. See Data.Text.ParagraphLayout.Rich.
Internally, HarfBuzz is used to shape individual runs of text, each of which fits within one line and has a constant script, direction, language, and formatting. Balkón abstracts this so that you can provide text with any mix of these attributes and a desired line width for line breaking.
Additionally, Balkón can be used for breaking an inline layout into pages. See Data.Text.ParagraphLayout.
[Skip to Readme]
library balkon
Modules
[Index] [Quick Jump]
library balkon:balkon-internal
Modules
[Index] [Quick Jump]
- Data
- Text
- ParagraphLayout
- Internal
- Data.Text.ParagraphLayout.Internal.AncestorBox
- Data.Text.ParagraphLayout.Internal.ApplyBoxes
- Data.Text.ParagraphLayout.Internal.BiDiLevels
- Data.Text.ParagraphLayout.Internal.BiDiReorder
- Data.Text.ParagraphLayout.Internal.BoxOptions
- Data.Text.ParagraphLayout.Internal.Break
- Data.Text.ParagraphLayout.Internal.Fragment
- Data.Text.ParagraphLayout.Internal.Line
- Data.Text.ParagraphLayout.Internal.LineHeight
- Data.Text.ParagraphLayout.Internal.LinePagination
- Data.Text.ParagraphLayout.Internal.Paginable
- Data.Text.ParagraphLayout.Internal.ParagraphAlignment
- Data.Text.ParagraphLayout.Internal.ParagraphConstruction
- Data.Text.ParagraphLayout.Internal.ParagraphLine
- Data.Text.ParagraphLayout.Internal.ParagraphOptions
- Data.Text.ParagraphLayout.Internal.Plain
- Data.Text.ParagraphLayout.Internal.Plain.Paragraph
- Data.Text.ParagraphLayout.Internal.Plain.ParagraphLayout
- Data.Text.ParagraphLayout.Internal.Rect
- Data.Text.ParagraphLayout.Internal.ResolvedBox
- Data.Text.ParagraphLayout.Internal.ResolvedSpan
- Data.Text.ParagraphLayout.Internal.Rich
- Data.Text.ParagraphLayout.Internal.Rich.Paragraph
- Data.Text.ParagraphLayout.Internal.Rich.ParagraphLayout
- Data.Text.ParagraphLayout.Internal.Run
- Data.Text.ParagraphLayout.Internal.Span
- Data.Text.ParagraphLayout.Internal.TextContainer
- Data.Text.ParagraphLayout.Internal.TextOptions
- Data.Text.ParagraphLayout.Internal.Tree
- Data.Text.ParagraphLayout.Internal.WithSpan
- Data.Text.ParagraphLayout.Internal.Zipper
- Internal
- ParagraphLayout
- Text
Downloads
- balkon-1.3.0.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1.0.0, 0.2.0.0, 0.2.1.0, 0.3.0.0, 1.0.0.0, 1.0.0.1, 1.1.0.0, 1.2.0.0, 1.3.0.0 |
---|---|
Change log | CHANGELOG.md |
Dependencies | balkon, base (>=4.12 && <5), harfbuzz-pure (>=1.0.3.2 && <1.1), text (>=2.0.2 && <3), text-icu (>=0.8.0.2 && <0.9), unicode-data-scripts (>=0.2.0.1 && <0.3) [details] |
License | GPL-3.0-only |
Author | Jaro |
Maintainer | jaro@argonaut-constellation.org |
Revised | Revision 1 made by alcinnz at 2023-07-20T02:07:52Z |
Category | Text |
Home page | https://argonaut-constellation.org/ |
Bug tracker | https://todo.argonaut-constellation.org/~jaro/balkon |
Source repo | head: git clone https://git.argonaut-constellation.org/~jaro/balkon -b main |
Uploaded | by alcinnz at 2023-07-03T07:08:16Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Downloads | 423 total (10 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user [build log] All reported builds failed as of 2023-07-03 [all 2 reports] |