From d6cc1a8cc538f82101024202717bcf2ea836bec4 Mon Sep 17 00:00:00 2001 From: Khaled Hosny Date: Tue, 24 Apr 2012 16:32:21 +0000 Subject: Merge changes from XeTeX repository git-svn-id: svn://tug.org/texlive/trunk@26122 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/web2c/xetexdir/ChangeLog | 4 +++ Build/source/texk/web2c/xetexdir/xetex.ch | 40 +++++++++++++++--------------- 2 files changed, 24 insertions(+), 20 deletions(-) (limited to 'Build/source') diff --git a/Build/source/texk/web2c/xetexdir/ChangeLog b/Build/source/texk/web2c/xetexdir/ChangeLog index 3569adce478..d3fe3d5afab 100644 --- a/Build/source/texk/web2c/xetexdir/ChangeLog +++ b/Build/source/texk/web2c/xetexdir/ChangeLog @@ -1,3 +1,7 @@ +2012-04-24 Khaled Hosny + + * xetex.ch: Merge changes from XeTeX repository. + 2012-04-19 Peter Breitenlohner * xetex-hz.ch: Added copyright statement. diff --git a/Build/source/texk/web2c/xetexdir/xetex.ch b/Build/source/texk/web2c/xetexdir/xetex.ch index 785166f4144..ddf6b5a5a6d 100644 --- a/Build/source/texk/web2c/xetexdir/xetex.ch +++ b/Build/source/texk/web2c/xetexdir/xetex.ch @@ -3384,6 +3384,7 @@ if translate_filename then begin @d is_native_font(#)==(is_atsu_font(#) or is_otgr_font(#)) {native fonts have |font_area| = 65534 or 65535, which would be a string containing an invalid Unicode character} +@d is_new_mathfont(#)==(is_ot_font(#) and (isOpenTypeMathFont(font_layout_engine[#]))) @d non_char==qi(too_big_char) {a |halfword| code that can't match a real character} @z @@ -4270,7 +4271,7 @@ macro capabilities. This seems a bit ugly, but it works. rval: scaled; begin f := fam_fnt(2 + size_code); - if is_ot_font(cur_f) then + if is_new_mathfont(cur_f) then rval := get_native_mathsy_param(cur_f, #) else rval := mathsy(#); @@ -4319,7 +4320,7 @@ define_mathsy_accessor(axis_height)(22)(axis_height); rval: scaled; begin f := fam_fnt(3 + cur_size); - if is_ot_font(cur_f) then + if is_new_mathfont(cur_f) then rval := get_native_mathex_param(cur_f, #) else rval := mathex(#); @@ -4477,7 +4478,6 @@ begin {set glue so as to stretch the connections if needed} o:=0; - depth(b):=0; if (s>nat) and (str>0) then begin o:=(s-nat); {don't stretch more than |str|} @@ -4676,10 +4676,10 @@ f:internal_font_number; rule_thickness:scaled; {rule thickness} @!delta,@!clr:scaled; {dimensions involved in the calculation} begin f:=fam_fnt(small_fam(left_delimiter(q)) + cur_size); -if is_ot_font(f) then rule_thickness:=get_ot_math_constant(f,radicalRuleThickness) +if is_new_mathfont(f) then rule_thickness:=get_ot_math_constant(f,radicalRuleThickness) else rule_thickness:=default_rule_thickness; x:=clean_box(nucleus(q),cramped_style(cur_style)); -if is_ot_font(f) then begin +if is_new_mathfont(f) then begin if cur_style; end; if x<>null then begin - if is_ot_font(f) then + if is_new_mathfont(f) then if is_bottom_acc(q) then delta:=0 else if h= -begin if is_ot_font(cur_f) then begin +begin if is_new_mathfont(cur_f) then begin if cur_style= -begin if is_ot_font(cur_f) then begin +begin if is_new_mathfont(cur_f) then begin delta:=half(thickness(q)); if cur_style0 then begin shift_down:=shift_down+clr; - if is_ot_font(cur_f) then + if is_new_mathfont(cur_f) then clr:=get_ot_math_constant(cur_f, superscriptBottomMaxWithSubscript)-(shift_up-depth(x)) else clr:=(abs(math_x_height(cur_size)*4) div 5)-(shift_up-depth(x)); @@ -6528,11 +6528,11 @@ if (font_params[fam_fnt(2+text_size)]= if ((font_params[fam_fnt(2+text_size)]