[metrics] Fix weird use of xor
I believe that was a try to use one approach as fallback to other. But felt wrong. Just believe what's in OS/2 table to be correct.
This commit is contained in:
parent
9675a067bf
commit
2bd953ff4f
|
@ -55,14 +55,14 @@ hb_ot_metrics_get_position_internal (hb_face_t *face,
|
|||
(face->table.TABLE->has_data () && \
|
||||
(position && (*position = face->table.TABLE->ATTR + face->table.MVAR->get_var (metrics_tag, nullptr, 0)), true))
|
||||
case HB_OT_METRICS_HORIZONTAL_ASCENDER:
|
||||
return (face->table.OS2->is_typo_metrics () ^ GET_METRIC (hhea, ascender)) ||
|
||||
GET_METRIC (OS2, sTypoAscender);
|
||||
return face->table.OS2->use_typo_metrics () ?
|
||||
GET_METRIC (OS2, sTypoAscender) : GET_METRIC (hhea, ascender);
|
||||
case HB_OT_METRICS_HORIZONTAL_DESCENDER:
|
||||
return (face->table.OS2->is_typo_metrics () ^ GET_METRIC (hhea, descender)) ||
|
||||
GET_METRIC (OS2, sTypoDescender);
|
||||
return face->table.OS2->use_typo_metrics () ?
|
||||
GET_METRIC (OS2, sTypoDescender) : GET_METRIC (hhea, descender);
|
||||
case HB_OT_METRICS_HORIZONTAL_LINE_GAP:
|
||||
return (face->table.OS2->is_typo_metrics () ^ GET_METRIC (hhea, lineGap)) ||
|
||||
GET_METRIC (OS2, sTypoLineGap);
|
||||
return face->table.OS2->use_typo_metrics () ?
|
||||
GET_METRIC (OS2, sTypoLineGap) : GET_METRIC (hhea, lineGap);
|
||||
case HB_OT_METRICS_HORIZONTAL_CLIPPING_ASCENT: return GET_METRIC (OS2, usWinAscent);
|
||||
case HB_OT_METRICS_HORIZONTAL_CLIPPING_DESCENT: return GET_METRIC (OS2, usWinDescent);
|
||||
case HB_OT_METRICS_VERTICAL_ASCENDER: return GET_METRIC (vhea, ascender);
|
||||
|
|
|
@ -119,7 +119,7 @@ struct OS2
|
|||
|
||||
bool is_italic () const { return fsSelection & ITALIC; }
|
||||
bool is_oblique () const { return fsSelection & OBLIQUE; }
|
||||
bool is_typo_metrics () const { return fsSelection & USE_TYPO_METRICS; }
|
||||
bool use_typo_metrics () const { return fsSelection & USE_TYPO_METRICS; }
|
||||
|
||||
enum width_class_t {
|
||||
FWIDTH_ULTRA_CONDENSED = 1, /* 50% */
|
||||
|
|
Loading…
Reference in New Issue