diff --git a/spec.html b/spec.html index e838f2a..5f4c61b 100644 --- a/spec.html +++ b/spec.html @@ -1738,6 +1738,10 @@
<mo>
element.
+
+ Let dir
be the element's computed
+ direction.
+
Operators are laid out as follows:
c
then fall back to the
layout algorithm of .
+ If it is not possible to get a glyph corresponding to
+ c
given directionality dir
, then
+ fall back to the layout algorithm of .
+ Otherwise, let g
be the result of running
+ get a glyph corresponding to c
+ given directionality dir
.
c
in the inline direction
- with the
- first available font
- then fall back to the
+ g
in the inline direction with the
+ first available font then fall back to the
layout algorithm of .
Tinline
.
+ shape a stretchy glyph g
to
+ inline dimension Tinline
.
g
stretched to inline dimension
Tinline
and
at position determined by the previous box metrics.
@@ -1796,10 +1804,8 @@ c
in the block direction
- with the
- first available font
- then fall back to the
+ g
in the block direction with the
+ first available font then fall back to the
layout algorithm of .
minsize
and maxsize
be the [=embellished operator/minsize=] and [=embellished operator/maxsize=] properties on the
operator. Percentage values are interpreted relative
- to the height of the glyph for c
.
+ to the height of g
.
Let T
=
Tascent
+
Tdescent
be the target size.
@@ -1920,7 +1926,7 @@ g
to block dimension
Tascent
+
Tdescent
.
@@ -1937,7 +1943,7 @@ g
stretched to block dimension
Tascent
+
Tdescent
@@ -1961,25 +1967,63 @@
- Use the
- MathVariants
- table to try and find a glyph of height at least
- DisplayOperatorMinHeight.
- If none is found, fall back to the
- largest non-base glyph. If none is found, fall back to
- the layout algorithm of .
-
g
in the block direction with the
+ first available font then fall back to the
+ layout algorithm of .
+ g
+ to block dimension
+ DisplayOperatorMinHeight.
+ The inline size of the math content is the width of
+ the stretchy glyph. The stretchy glyph is shifted
+ towards the line-under by a value Δ so that its
+ center aligns with the center of the target when
+ [=embellished operator/symmetric=]:
+ the ink ascent of the math content is
+ the ascent of the stretchy glyph − Δ
+ and the ink descent of the math content is
+ the descent of the stretchy glyph + Δ.
+ g
+ stretched to block dimension
+ DisplayOperatorMinHeight
+ and at position determined by the previous box metrics
+ shifted by Δ towards the line-over.
- The radical glyph is the glyph obtained for the
- character U+221A SQUARE ROOT.
+ Let dir
be the computed direction
+ of the <msqrt>
or <mroot>
element.
+ The radical glyph is the glyph obtained as a result of running
+ get a glyph corresponding to the U+221A SQUARE ROOT character
+ given dir
.
The radical gap is given by @@ -2856,8 +2903,8 @@
The box metrics of the radical glyph and painting of the surd are given by the algorithm to - shape a stretchy glyph to block dimension the - target size for the radical glyph. + shape a stretchy glyph to the + target size for the radical glyph in the block dimension.
+ The algorithm to get a glyph corresponding to a character c
given a directionality dir
+ is the following:
+
g
be the glyph corresponding to c
+ in the first available font.
+ If it is not possible to find such a glyph, then exit with failure.
+ dir
is rtl
:
+ g
in the first available font,
+ then return it and exit with success. [[OPEN-FONT-FORMAT]]
+ c
has the Bidi_Mirrored property [[BIDI]]:
+ c
has a corresponding mirrored codepoint,
+ c'
, then return the glyph corresponding
+ to c'
and exit with success.
+ If it is not possible to find such a glyph, then exit with failure.
+ g
and exit with success.
+ dir
is ltr
.
+ g
and exit with success.
+