below right support
This commit is contained in:
parent
1f22d20c8c
commit
45511ee976
2 changed files with 12 additions and 0 deletions
11
font/font.c
11
font/font.c
|
@ -1122,6 +1122,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||||
struct grub_video_signed_rect bounds;
|
struct grub_video_signed_rect bounds;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
signed above_rightx, above_righty;
|
signed above_rightx, above_righty;
|
||||||
|
signed below_rightx, below_righty;
|
||||||
auto void NESTED_FUNC_ATTR do_blit (struct grub_font_glyph *src,
|
auto void NESTED_FUNC_ATTR do_blit (struct grub_font_glyph *src,
|
||||||
signed dx, signed dy);
|
signed dx, signed dy);
|
||||||
void NESTED_FUNC_ATTR do_blit (struct grub_font_glyph *src,
|
void NESTED_FUNC_ATTR do_blit (struct grub_font_glyph *src,
|
||||||
|
@ -1176,6 +1177,9 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||||
above_rightx = bounds.x + bounds.width;
|
above_rightx = bounds.x + bounds.width;
|
||||||
above_righty = bounds.y + bounds.height;
|
above_righty = bounds.y + bounds.height;
|
||||||
|
|
||||||
|
below_rightx = bounds.x + bounds.width;
|
||||||
|
below_righty = bounds.y;
|
||||||
|
|
||||||
for (i = 0; i < glyph_id->ncomb; i++)
|
for (i = 0; i < glyph_id->ncomb; i++)
|
||||||
{
|
{
|
||||||
grub_int16_t space = 0;
|
grub_int16_t space = 0;
|
||||||
|
@ -1210,6 +1214,13 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||||
minimal_device_width (above_rightx);
|
minimal_device_width (above_rightx);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case GRUB_UNICODE_COMB_BELOW_RIGHT:
|
||||||
|
do_blit (combining_glyphs[i], below_rightx,
|
||||||
|
below_righty);
|
||||||
|
below_rightx += combining_glyphs[i]->width;
|
||||||
|
minimal_device_width (below_rightx);
|
||||||
|
break;
|
||||||
|
|
||||||
case GRUB_UNICODE_STACK_ABOVE:
|
case GRUB_UNICODE_STACK_ABOVE:
|
||||||
space = combining_glyphs[i]->offset_y
|
space = combining_glyphs[i]->offset_y
|
||||||
- grub_font_get_xheight (combining_glyphs[i]->font);
|
- grub_font_get_xheight (combining_glyphs[i]->font);
|
||||||
|
|
|
@ -69,6 +69,7 @@ enum grub_comb_type
|
||||||
GRUB_UNICODE_STACK_ATTACHED_ABOVE = 214,
|
GRUB_UNICODE_STACK_ATTACHED_ABOVE = 214,
|
||||||
GRUB_UNICODE_COMB_ATTACHED_ABOVE_RIGHT = 216,
|
GRUB_UNICODE_COMB_ATTACHED_ABOVE_RIGHT = 216,
|
||||||
GRUB_UNICODE_STACK_BELOW = 220,
|
GRUB_UNICODE_STACK_BELOW = 220,
|
||||||
|
GRUB_UNICODE_COMB_BELOW_RIGHT = 222,
|
||||||
GRUB_UNICODE_STACK_ABOVE = 230,
|
GRUB_UNICODE_STACK_ABOVE = 230,
|
||||||
GRUB_UNICODE_COMB_ABOVE_RIGHT = 232,
|
GRUB_UNICODE_COMB_ABOVE_RIGHT = 232,
|
||||||
GRUB_UNICODE_COMB_YPOGEGRAMMENI = 240,
|
GRUB_UNICODE_COMB_YPOGEGRAMMENI = 240,
|
||||||
|
|
Loading…
Reference in a new issue