diff options
| author | LU Jialin <luxxxlucy@gmail.com> | 2023-09-25 19:13:16 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-09-25 13:13:16 +0200 |
| commit | 04b4536772362e15de5ee3e88d05dbb066f85f37 (patch) | |
| tree | 7048777fd3608315e577fca57d50b19f44e7a895 /crates | |
| parent | 50b031843410505a45da6f2792d9b87e3d5845a1 (diff) | |
Fixing the baseline in math content (#2220)
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/typst-library/src/math/fragment.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/crates/typst-library/src/math/fragment.rs b/crates/typst-library/src/math/fragment.rs index 4e174349..5ac1f2dd 100644 --- a/crates/typst-library/src/math/fragment.rs +++ b/crates/typst-library/src/math/fragment.rs @@ -187,6 +187,7 @@ pub struct GlyphFragment { pub font: Font, pub lang: Lang, pub fill: Paint, + pub shift: Abs, pub width: Abs, pub ascent: Abs, pub descent: Abs, @@ -225,6 +226,7 @@ impl GlyphFragment { font: ctx.font.clone(), lang: TextElem::lang_in(ctx.styles()), fill: TextElem::fill_in(ctx.styles()), + shift: TextElem::baseline_in(ctx.styles()), style: ctx.style, font_size: ctx.size, width: Abs::zero(), @@ -309,7 +311,7 @@ impl GlyphFragment { let size = Size::new(self.width, self.ascent + self.descent); let mut frame = Frame::new(size); frame.set_baseline(self.ascent); - frame.push(Point::with_y(self.ascent), FrameItem::Text(item)); + frame.push(Point::with_y(self.ascent + self.shift), FrameItem::Text(item)); frame.meta_iter(self.meta); frame } |
