diff options
| author | Laurenz <laurmaedje@gmail.com> | 2021-03-19 13:20:58 +0100 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-03-19 13:20:58 +0100 |
| commit | 54a9ccb1a5e9f1f1e5d2538d2f4ce3d4f7afc4ae (patch) | |
| tree | 3a0f45af5d1cd6d65420887f8412a5594b6300bd /tests | |
| parent | bd12d135cab32d61b32945433e77579d04298d52 (diff) | |
Configurable font edges ⚙
Adds top-edge and bottom-edge parameters to the font function. These define how
the box around a word is computed. The possible values are:
- ascender
- cap-height (default top edge)
- x-height
- baseline (default bottom edge)
- descender
The defaults are chosen so that it's easy to create good-looking designs with
vertical alignment. Since they are much tighter than what most other software
uses by default, the default leading had to be increased to 50% of the font size
and paragraph spacing to 100% of the font size.
The values cap-height and x-height fall back to ascender in case they are zero
because this value may occur in fonts that don't have glyphs with cap- or
x-height (like Twitter Color Emoji). Since cap-height is the default top edge,
doing no fallback would break things badly.
Removes softness in favor of a simple boolean for pages and a more finegread u8
for spacing. This is needed to make paragraph spacing consume line spacing
created by hard line breaks.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/ref/comment.png | bin | 746 -> 706 bytes | |||
| -rw-r--r-- | tests/ref/control/for.png | bin | 2787 -> 2724 bytes | |||
| -rw-r--r-- | tests/ref/control/if.png | bin | 1727 -> 1637 bytes | |||
| -rw-r--r-- | tests/ref/control/invalid.png | bin | 3772 -> 3642 bytes | |||
| -rw-r--r-- | tests/ref/control/let.png | bin | 2089 -> 1961 bytes | |||
| -rw-r--r-- | tests/ref/control/while.png | bin | 929 -> 880 bytes | |||
| -rw-r--r-- | tests/ref/expand.png | bin | 1419 -> 1372 bytes | |||
| -rw-r--r-- | tests/ref/expr/array.png | bin | 3317 -> 3396 bytes | |||
| -rw-r--r-- | tests/ref/expr/block-invalid.png | bin | 522 -> 512 bytes | |||
| -rw-r--r-- | tests/ref/expr/block.png | bin | 1453 -> 1428 bytes | |||
| -rw-r--r-- | tests/ref/expr/call-invalid.png | bin | 2789 -> 2866 bytes | |||
| -rw-r--r-- | tests/ref/expr/call.png | bin | 5863 -> 5991 bytes | |||
| -rw-r--r-- | tests/ref/expr/dict.png | bin | 1627 -> 1612 bytes | |||
| -rw-r--r-- | tests/ref/expr/ops.png | bin | 827 -> 776 bytes | |||
| -rw-r--r-- | tests/ref/full/coma.png | bin | 59486 -> 59286 bytes | |||
| -rw-r--r-- | tests/ref/library/font.png | bin | 4554 -> 8878 bytes | |||
| -rw-r--r-- | tests/ref/library/image.png | bin | 219392 -> 219513 bytes | |||
| -rw-r--r-- | tests/ref/library/pad.png | bin | 1254 -> 1226 bytes | |||
| -rw-r--r-- | tests/ref/library/page.png | bin | 8417 -> 8290 bytes | |||
| -rw-r--r-- | tests/ref/library/pagebreak.png | bin | 840 -> 803 bytes | |||
| -rw-r--r-- | tests/ref/library/shapes.png | bin | 3266 -> 3136 bytes | |||
| -rw-r--r-- | tests/ref/library/spacing.png | bin | 3960 -> 3833 bytes | |||
| -rw-r--r-- | tests/ref/markup/emph.png | bin | 3079 -> 3053 bytes | |||
| -rw-r--r-- | tests/ref/markup/escape.png | bin | 4197 -> 5339 bytes | |||
| -rw-r--r-- | tests/ref/markup/heading.png | bin | 4656 -> 4540 bytes | |||
| -rw-r--r-- | tests/ref/markup/linebreak.png | bin | 3864 -> 3770 bytes | |||
| -rw-r--r-- | tests/ref/markup/nbsp.png | bin | 1818 -> 1763 bytes | |||
| -rw-r--r-- | tests/ref/markup/raw.png | bin | 7282 -> 7291 bytes | |||
| -rw-r--r-- | tests/ref/markup/strong.png | bin | 2847 -> 2824 bytes | |||
| -rw-r--r-- | tests/ref/repr.png | bin | 10195 -> 10139 bytes | |||
| -rw-r--r-- | tests/ref/spacing.png | bin | 5494 -> 5212 bytes | |||
| -rw-r--r-- | tests/ref/text.png | bin | 1880 -> 36910 bytes | |||
| -rw-r--r-- | tests/typ/control/let.typ | 4 | ||||
| -rw-r--r-- | tests/typ/full/coma.typ | 4 | ||||
| -rw-r--r-- | tests/typ/library/font.typ | 14 | ||||
| -rw-r--r-- | tests/typ/library/spacing.typ | 2 | ||||
| -rw-r--r-- | tests/typ/markup/escape.typ | 4 | ||||
| -rw-r--r-- | tests/typ/markup/raw.typ | 2 | ||||
| -rw-r--r-- | tests/typ/text.typ | 21 |
39 files changed, 40 insertions, 11 deletions
diff --git a/tests/ref/comment.png b/tests/ref/comment.png Binary files differindex 1fad97fe..6d5723ef 100644 --- a/tests/ref/comment.png +++ b/tests/ref/comment.png diff --git a/tests/ref/control/for.png b/tests/ref/control/for.png Binary files differindex d04ea62c..f3830b34 100644 --- a/tests/ref/control/for.png +++ b/tests/ref/control/for.png diff --git a/tests/ref/control/if.png b/tests/ref/control/if.png Binary files differindex 99bde49e..0527754e 100644 --- a/tests/ref/control/if.png +++ b/tests/ref/control/if.png diff --git a/tests/ref/control/invalid.png b/tests/ref/control/invalid.png Binary files differindex ff4c6987..e9c64b8a 100644 --- a/tests/ref/control/invalid.png +++ b/tests/ref/control/invalid.png diff --git a/tests/ref/control/let.png b/tests/ref/control/let.png Binary files differindex 5fb1c992..20aad953 100644 --- a/tests/ref/control/let.png +++ b/tests/ref/control/let.png diff --git a/tests/ref/control/while.png b/tests/ref/control/while.png Binary files differindex 890131f1..2ea1bcb0 100644 --- a/tests/ref/control/while.png +++ b/tests/ref/control/while.png diff --git a/tests/ref/expand.png b/tests/ref/expand.png Binary files differindex fc1f5de9..f18e929b 100644 --- a/tests/ref/expand.png +++ b/tests/ref/expand.png diff --git a/tests/ref/expr/array.png b/tests/ref/expr/array.png Binary files differindex 784553b3..b1e20348 100644 --- a/tests/ref/expr/array.png +++ b/tests/ref/expr/array.png diff --git a/tests/ref/expr/block-invalid.png b/tests/ref/expr/block-invalid.png Binary files differindex b380defc..d1e85402 100644 --- a/tests/ref/expr/block-invalid.png +++ b/tests/ref/expr/block-invalid.png diff --git a/tests/ref/expr/block.png b/tests/ref/expr/block.png Binary files differindex d5ad52ae..d8ea84fb 100644 --- a/tests/ref/expr/block.png +++ b/tests/ref/expr/block.png diff --git a/tests/ref/expr/call-invalid.png b/tests/ref/expr/call-invalid.png Binary files differindex 88f13780..eb192357 100644 --- a/tests/ref/expr/call-invalid.png +++ b/tests/ref/expr/call-invalid.png diff --git a/tests/ref/expr/call.png b/tests/ref/expr/call.png Binary files differindex 7197bb90..26f1cb03 100644 --- a/tests/ref/expr/call.png +++ b/tests/ref/expr/call.png diff --git a/tests/ref/expr/dict.png b/tests/ref/expr/dict.png Binary files differindex 28a7cb3b..1caef1e0 100644 --- a/tests/ref/expr/dict.png +++ b/tests/ref/expr/dict.png diff --git a/tests/ref/expr/ops.png b/tests/ref/expr/ops.png Binary files differindex 95a24c0e..2f3a28ea 100644 --- a/tests/ref/expr/ops.png +++ b/tests/ref/expr/ops.png diff --git a/tests/ref/full/coma.png b/tests/ref/full/coma.png Binary files differindex f5db682d..5fd6d801 100644 --- a/tests/ref/full/coma.png +++ b/tests/ref/full/coma.png diff --git a/tests/ref/library/font.png b/tests/ref/library/font.png Binary files differindex 8e611b16..199a15f2 100644 --- a/tests/ref/library/font.png +++ b/tests/ref/library/font.png diff --git a/tests/ref/library/image.png b/tests/ref/library/image.png Binary files differindex af497c8d..0a45e11b 100644 --- a/tests/ref/library/image.png +++ b/tests/ref/library/image.png diff --git a/tests/ref/library/pad.png b/tests/ref/library/pad.png Binary files differindex a655061b..3536db5d 100644 --- a/tests/ref/library/pad.png +++ b/tests/ref/library/pad.png diff --git a/tests/ref/library/page.png b/tests/ref/library/page.png Binary files differindex 1537fad4..7d1ff96f 100644 --- a/tests/ref/library/page.png +++ b/tests/ref/library/page.png diff --git a/tests/ref/library/pagebreak.png b/tests/ref/library/pagebreak.png Binary files differindex b1ee0eef..f0052f9e 100644 --- a/tests/ref/library/pagebreak.png +++ b/tests/ref/library/pagebreak.png diff --git a/tests/ref/library/shapes.png b/tests/ref/library/shapes.png Binary files differindex 8ace6fd6..a244feb1 100644 --- a/tests/ref/library/shapes.png +++ b/tests/ref/library/shapes.png diff --git a/tests/ref/library/spacing.png b/tests/ref/library/spacing.png Binary files differindex 0842d409..6a234a8a 100644 --- a/tests/ref/library/spacing.png +++ b/tests/ref/library/spacing.png diff --git a/tests/ref/markup/emph.png b/tests/ref/markup/emph.png Binary files differindex f002610e..75231a62 100644 --- a/tests/ref/markup/emph.png +++ b/tests/ref/markup/emph.png diff --git a/tests/ref/markup/escape.png b/tests/ref/markup/escape.png Binary files differindex 3fa44c6d..8e946279 100644 --- a/tests/ref/markup/escape.png +++ b/tests/ref/markup/escape.png diff --git a/tests/ref/markup/heading.png b/tests/ref/markup/heading.png Binary files differindex 9f2ce6ec..3473f798 100644 --- a/tests/ref/markup/heading.png +++ b/tests/ref/markup/heading.png diff --git a/tests/ref/markup/linebreak.png b/tests/ref/markup/linebreak.png Binary files differindex fec65248..4e4702f9 100644 --- a/tests/ref/markup/linebreak.png +++ b/tests/ref/markup/linebreak.png diff --git a/tests/ref/markup/nbsp.png b/tests/ref/markup/nbsp.png Binary files differindex 3e1f0ee7..89f75f14 100644 --- a/tests/ref/markup/nbsp.png +++ b/tests/ref/markup/nbsp.png diff --git a/tests/ref/markup/raw.png b/tests/ref/markup/raw.png Binary files differindex ce833428..59a4e3dd 100644 --- a/tests/ref/markup/raw.png +++ b/tests/ref/markup/raw.png diff --git a/tests/ref/markup/strong.png b/tests/ref/markup/strong.png Binary files differindex ac38c436..7e62f0f3 100644 --- a/tests/ref/markup/strong.png +++ b/tests/ref/markup/strong.png diff --git a/tests/ref/repr.png b/tests/ref/repr.png Binary files differindex 2f5697fd..ad10705c 100644 --- a/tests/ref/repr.png +++ b/tests/ref/repr.png diff --git a/tests/ref/spacing.png b/tests/ref/spacing.png Binary files differindex 8bdc9885..454b154f 100644 --- a/tests/ref/spacing.png +++ b/tests/ref/spacing.png diff --git a/tests/ref/text.png b/tests/ref/text.png Binary files differindex 38ae364d..1dd70c1c 100644 --- a/tests/ref/text.png +++ b/tests/ref/text.png diff --git a/tests/typ/control/let.typ b/tests/typ/control/let.typ index dd971ee5..4f84aa67 100644 --- a/tests/typ/control/let.typ +++ b/tests/typ/control/let.typ @@ -17,8 +17,8 @@ --- // Syntax sugar for function definitions. -#let background = #239dad -#let rect(body) = rect(width: 2cm, height: 1cm, fill: background, body) +#let background = #9feb52 +#let rect(body) = rect(width: 2cm, fill: background, pad(5pt, body)) #rect[Hi!] // Error: 13 expected body diff --git a/tests/typ/full/coma.typ b/tests/typ/full/coma.typ index 243c667f..619843d7 100644 --- a/tests/typ/full/coma.typ +++ b/tests/typ/full/coma.typ @@ -30,8 +30,8 @@ // the parentheses. #align(center)[ // Markdown-like syntax for headings. - ==== 3. Übungsblatt Computerorientierte Mathematik II #v(2mm) - *Abgabe: 03.05.2019* (bis 10:10 Uhr in MA 001) #v(2mm) + ==== 3. Übungsblatt Computerorientierte Mathematik II #v(4mm) + *Abgabe: 03.05.2019* (bis 10:10 Uhr in MA 001) #v(4mm) *Alle Antworten sind zu beweisen.* ] diff --git a/tests/typ/library/font.typ b/tests/typ/library/font.typ index c00bff5a..ecea303f 100644 --- a/tests/typ/library/font.typ +++ b/tests/typ/library/font.typ @@ -32,6 +32,20 @@ Emoji: 🐪, 🌋, 🏞 ] --- +// Test top and bottom edge. + +#page(width: 170pt) +#let try(top, bottom) = rect(fill: #9feb52)[ + #font(top-edge: top, bottom-edge: bottom) + `From `#top` to `#bottom +] + +#try(ascender, descender) +#try(ascender, baseline) +#try(cap-height, baseline) +#try(x-height, baseline) + +--- // Ref: false // Error: 7-12 unexpected argument diff --git a/tests/typ/library/spacing.typ b/tests/typ/library/spacing.typ index a34840c6..6d50f0dc 100644 --- a/tests/typ/library/spacing.typ +++ b/tests/typ/library/spacing.typ @@ -2,7 +2,7 @@ --- // Ends paragraphs. -Tightly #v(-5pt) packed +Tightly #v(0pt) packed // Eating up soft spacing. Inv #h(0pt) isible diff --git a/tests/typ/markup/escape.typ b/tests/typ/markup/escape.typ index eeac4997..b0a809f9 100644 --- a/tests/typ/markup/escape.typ +++ b/tests/typ/markup/escape.typ @@ -28,3 +28,7 @@ // Unterminated. // Error: 6 expected closing brace \u{41*Bold* + +--- +// Some code stuff in text. +let f() , ; : | + - /= == 12 "string" diff --git a/tests/typ/markup/raw.typ b/tests/typ/markup/raw.typ index f5074c8e..005d413e 100644 --- a/tests/typ/markup/raw.typ +++ b/tests/typ/markup/raw.typ @@ -7,7 +7,7 @@ --- // Typst syntax inside. `#let x = 1` \ -`#[f 1]` +`#f(1)` --- // Multiline block splits paragraphs. diff --git a/tests/typ/text.typ b/tests/typ/text.typ index d86f4895..b424cee8 100644 --- a/tests/typ/text.typ +++ b/tests/typ/text.typ @@ -1,8 +1,19 @@ // Test simple text. ---- -Hello 🌏! +#page(width: 250pt) ---- -// Some code stuff in text. -let f() , ; : | + - /= == 12 "string" +But, soft! what light through yonder window breaks? It is the east, and Juliet +is the sun. Arise, fair sun, and kill the envious moon, Who is already sick and +pale with grief, That thou her maid art far more fair than she: Be not her maid, +since she is envious; Her vestal livery is but sick and green And none but fools +do wear it; cast it off. It is my lady, O, it is my love! O, that she knew she +were! She speaks yet she says nothing: what of that? Her eye discourses; I will +answer it. + +I am too bold, 'tis not to me she speaks: Two of the fairest stars in all the +heaven, Having some business, do entreat her eyes To twinkle in their spheres +till they return. What if her eyes were there, they in her head? The brightness +of her cheek would shame those stars, As daylight doth a lamp; her eyes in +heaven Would through the airy region stream so bright That birds would sing and +think it were not night. See, how she leans her cheek upon her hand! O, that I +were a glove upon that hand, That I might touch that cheek! |
