mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-28 01:40:17 -05:00
fcft: update to 0.3.0
fcft now calculates the underline and strikeout integer positions, making our rendering code much simpler.
This commit is contained in:
parent
a17ce10c03
commit
0f15f0ba43
4 changed files with 7 additions and 13 deletions
14
render.c
14
render.c
|
|
@ -105,14 +105,11 @@ draw_underline(const struct terminal *term, pixman_image_t *pix,
|
|||
const struct font *font,
|
||||
const pixman_color_t *color, int x, int y, int cols)
|
||||
{
|
||||
int baseline = y + font_baseline(term);
|
||||
double width = font->underline.thickness;
|
||||
int y_under = floor(baseline - font->underline.position + width / 2.);
|
||||
|
||||
pixman_image_fill_rectangles(
|
||||
PIXMAN_OP_SRC, pix, color,
|
||||
1, &(pixman_rectangle16_t){
|
||||
x, y_under, cols * term->cell_width, round(max(1., width))});
|
||||
x, y + font_baseline(term) - font->underline.position,
|
||||
cols * term->cell_width, font->underline.thickness});
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -120,14 +117,11 @@ draw_strikeout(const struct terminal *term, pixman_image_t *pix,
|
|||
const struct font *font,
|
||||
const pixman_color_t *color, int x, int y, int cols)
|
||||
{
|
||||
int baseline = y + font_baseline(term);
|
||||
double width = font->strikeout.thickness;
|
||||
int y_strike = floor(baseline - font->strikeout.position + width / 2.);
|
||||
|
||||
pixman_image_fill_rectangles(
|
||||
PIXMAN_OP_SRC, pix, color,
|
||||
1, &(pixman_rectangle16_t){
|
||||
x, y_strike, cols * term->cell_width, round(max(1., width))});
|
||||
x, y + font_baseline(term) - font->strikeout.position,
|
||||
cols * term->cell_width, font->strikeout.thickness});
|
||||
}
|
||||
|
||||
static bool
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue