[glyf] Use contour_bounds_t::empty to simplify get_extents logic
This commit is contained in:
parent
d59ae5836d
commit
aa3831e295
|
@ -822,27 +822,19 @@ struct glyf
|
||||||
|
|
||||||
void get_extents (hb_font_t *font, hb_glyph_extents_t *extents)
|
void get_extents (hb_font_t *font, hb_glyph_extents_t *extents)
|
||||||
{
|
{
|
||||||
if (min_x > max_x)
|
if (unlikely (empty ()))
|
||||||
{
|
{
|
||||||
extents->width = 0;
|
extents->width = 0;
|
||||||
extents->x_bearing = 0;
|
extents->x_bearing = 0;
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
extents->x_bearing = font->em_scalef_x (min_x);
|
|
||||||
extents->width = font->em_scalef_x (max_x - min_x);
|
|
||||||
}
|
|
||||||
if (min_y > max_y)
|
|
||||||
{
|
|
||||||
extents->height = 0;
|
extents->height = 0;
|
||||||
extents->y_bearing = 0;
|
extents->y_bearing = 0;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
else
|
extents->x_bearing = font->em_scalef_x (min_x);
|
||||||
{
|
extents->width = font->em_scalef_x (max_x - min_x);
|
||||||
extents->y_bearing = font->em_scalef_y (max_y);
|
extents->y_bearing = font->em_scalef_y (max_y);
|
||||||
extents->height = font->em_scalef_y (min_y - max_y);
|
extents->height = font->em_scalef_y (min_y - max_y);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
float min_x, min_y, max_x, max_y;
|
float min_x, min_y, max_x, max_y;
|
||||||
|
|
Loading…
Reference in New Issue