diff --git a/index.html b/index.html new file mode 100644 index 0000000..f2909cb --- /dev/null +++ b/index.html @@ -0,0 +1,14066 @@ +
+ + + + + + + + ++ Copyright + © + 2024 + + World Wide Web Consortium. + W3C® + liability, + trademark and + permissive document license rules apply. +
++ This specification defines a core subset of Mathematical Markup + Language, or MathML, that is suitable for browser implementation. + MathML is a markup language for describing mathematical notation + and capturing both its structure and content. The goal of MathML is to + enable mathematics to be served, received, and processed on the World + Wide Web, just as HTML has enabled this functionality for text. +
+This section describes the status of this + document at the time of its publication. A list of current W3C + publications and the latest revision of this technical report can be found + in the W3C technical reports index at + https://www.w3.org/TR/.
++ This document was published by the Math Working Group as + an Editor's Draft. +
Publication as an Editor's Draft does not + imply endorsement by W3C and its Members.
+ This is a draft document and may be updated, replaced or obsoleted by other + documents at any time. It is inappropriate to cite this document as other + than work in progress. + +
+ + This document was produced by a group + operating under the + W3C Patent + Policy. + + + W3C maintains a + public list of any patent disclosures + made in connection with the deliverables of + the group; that page also includes + instructions for disclosing a patent. An individual who has actual + knowledge of a patent which the individual believes contains + Essential Claim(s) + must disclose the information in accordance with + section 6 of the W3C Patent Policy. + +
+ This document is governed by the + 03 November 2023 W3C Process Document. +
This section is non-normative.
+ ++ The [MATHML3] specification has several shortcomings that make it + hard to implement consistently across web rendering engines or to + extend with user-defined constructions, e.g.: +
++ This MathML Core specification intends to address these issues by + being as accurate as possible on the visual rendering of mathematical + formulas using additional rules from the TeXBook’s Appendix G + [TEXBOOK] and from the Open Font Format [OPEN-FONT-FORMAT], + [OPEN-TYPE-MATH-ILLUMINATED]. It also relies on modern browser + implementations and web technologies [HTML] [SVG] [CSS2] [DOM], + clarifying interactions + with them when needed or introducing new low-level primitives to + improve the web platform layering. +
++ Parts of MathML3 that do not fit well in this framework or are less + fundamental have been omitted. Instead, they are described in a + separate and larger [MATHML4] specification. The details of which + math feature will be included in future versions of MathML Core or + implemented as polyfills is still open. This question and other + potential improvements are tracked on GitHub. +
++ By increasing the level of implementation details, focusing on a + workable subset, following a browser-driven design and relying on + automated web platform tests, this specification is expected to + greatly improve MathML interoperability. Moreover, effort on MathML + layering will enable users to implement the rest of the MathML 4 + specification, or more generally to extend MathML Core, using + modern web technologies such as + shadow trees, + custom elements or + APIs from [HOUDINI]. +
++ The term MathML element refers to any element in the + MathML namespace. + The MathML elements defined in this specification are called the + MathML Core elements and are listed below. + Any MathML element that is not listed below is called an + Unknown MathML element. +
+annotation
annotation-xml
maction
math
merror
mfrac
mi
mmultiscripts
mn
mo
mover
mpadded
mphantom
mprescripts
mroot
mrow
ms
mspace
msqrt
mstyle
msub
msubsup
msup
mtable
mtd
mtext
mtr
munder
munderover
semantics
The grouping elements are
+ maction
,
+ math
,
+ merror
,
+ mphantom
,
+ mprescripts
,
+ mrow
,
+ mstyle
,
+ semantics
and unknown MathML elements.
The scripted elements are
+ mmultiscripts
,
+ mover
,
+ msub
,
+ msubsup
,
+ msup
,
+ munder
and
+ munderover
.
+
The radical elements are
+ mroot
and msqrt
.
+
+ The attributes defined in this specification have no namespace + and are called MathML attributes: +
+maction
attributesmo
attributesmpadded
attributesmspace
attributesmunderover
attributesmtd
attributesencoding
display
linethickness
MathML specifies a single top-level or root
+ math element, which encapsulates each
+ instance of MathML markup within a document. All other MathML content
+ must be contained in a <math>
element.
+
+ The <math>
+ element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the
+ following attributes:
+
+ The
+ display
+ attribute, if present,
+ must be an
+ ASCII case-insensitive
+ match
+ to block
or inline
.
+ The user agent stylesheet
+ described in A. User Agent Stylesheet
+ contains rules for this attribute that affect the
+ default values for the display
+ (block math
or inline math
)
+ and math-style
+ (normal
or compact
) properties.
+ If the display
+ attribute is absent or has an invalid value, the User Agent
+ stylesheet treats it the same as inline
.
+
+ This specification does not define any observable behavior that is + specific to the alttext attribute. +
+alttext
attribute may be used as
+ alternative text by some legacy systems that do not
+ implement math layout.
+ If the <math>
element does not have its computed
+ display
property equal to
+ block math
or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise the layout algorithm of the
+ mrow
element is used to produce a
+ math content box. That math content box is used as the content for the layout of
+ the element, as described by CSS for display: block
+ (if the computed value is block math
) or
+ display: inline
+ (if the computed value is inline math
).
+ Additionally, if the computed
+ display
property is equal to
+ block math
then that math content box is rendered
+ horizontally centered within the content box.
+
$$...$$
+ and inline mode $...$
correspond to
+ display="block"
and display="inline"
+ respectively.
+ In the following example, a math
formula
+ is rendered in display mode on a new line and taking full width,
+ with the math content centered within the container:
<div style="width: 15em;">
+ This mathematical formula with a big summation and the number pi
+ <math display="block" style="border: 1px dotted black;">
+ <mrow>
+ <munderover>
+ <mo>∑</mo>
+ <mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow>
+ <mrow><mo>+</mo><mn>∞</mn></mrow>
+ </munderover>
+ <mfrac>
+ <mn>1</mn>
+ <msup><mi>n</mi><mn>2</mn></msup>
+ </mfrac>
+ </mrow>
+ <mo>=</mo>
+ <mfrac>
+ <msup><mi>π</mi><mn>2</mn></msup>
+ <mn>6</mn>
+ </mfrac>
+ </math>
+ is easy to prove.
+</div>
+
+ As a comparison, the same formula would look as follows in
+ inline mode. The formula is embedded in the paragraph of text
+ without forced line breaking.
+ The baselines specified by the layout algorithm of the
+ mrow
are used for vertical
+ alignment. Note that
+ the middle of sum and equal symbols or fractions are all aligned,
+ but not with the alphabetical baseline of the surrounding
+ text.
Because good mathematical rendering requires use of mathematical
+ fonts, the
+ user agent stylesheet
+ should set the
+ font-family
+ to the
+ math
+ value on the <math>
element instead of inheriting
+ it. Additionally, several CSS properties that can be set on
+ a parent container such as
+ font-style
, font-weight
,
+ direction
or text-indent
etc
+ are not expected to apply to the math formula and so the
+ user agent stylesheet
+ has rules to reset them by default.
+
math {
+ direction: ltr;
+ text-indent: 0;
+ letter-spacing: normal;
+ line-height: normal;
+ word-spacing: normal;
+ font-family: math;
+ font-size: inherit;
+ font-style: normal;
+ font-weight: normal;
+ display: inline math;
+ math-shift: normal;
+ math-style: compact;
+ math-depth: 0;
+}
+math[display="block" i] {
+ display: block math;
+ math-style: normal;
+}
+math[display="inline" i] {
+ display: inline math;
+ math-style: compact;
+}
+ In addition to CSS data types, some MathML attributes rely on the following MathML-specific types:
+true
or
+ false
.
+ + The following attributes are common to and may be specified on all MathML + elements: +
+autofocus
class
data-*
dir
displaystyle
id
mathbackground
mathcolor
mathsize
nonce
scriptlevel
style
tabindex
on*
event handler attributes
+ The
+ id,
+ class,
+ style,
+ data-*
,
+ autofocus and
+ nonce and
+ tabindex
+ attributes have the same syntax and semantics as defined for
+ id
,
+ class
,
+ style
,
+ data-*,
+ autofocus
,
+ nonce
and
+ tabindex
+ attributes on HTML elements.
+
+ The
+ dir
+ attribute, if present,
+ must be an
+ ASCII case-insensitive match
+ to ltr
or rtl
.
+ In that case, the user agent is expected to treat the attribute as a
+ presentational hint setting the element's
+ direction
+ property to the corresponding value.
+ More precisely, an
+ ASCII case-insensitive match
+ to rtl
is mapped to rtl
while
+ an ASCII case-insensitive match to ltr
is mapped to ltr
.
+
rtl
in Arabic speaking world.
+ However, languages written from right to left often embed math
+ written from left to right and so the
+ user agent stylesheet resets
+ the
+ direction
+ property accordingly on the math
+ elements.
+ + In the following example, the dir attribute + is used to render "𞸎 plus 𞸑 raised to the power of + (٢ over, 𞸟 plus ١)" from right-to-left. +
+<math dir="rtl">
+ <mrow>
+ <mi>𞸎</mi>
+ <mo>+</mo>
+ <msup>
+ <mi>𞸑</mi>
+ <mfrac>
+ <mn>٢</mn>
+ <mrow>
+ <mi>𞸟</mi>
+ <mo>+</mo>
+ <mn>١</mn>
+ </mrow>
+ </mfrac>
+ </msup>
+ </mrow>
+</math>
+
+ + All MathML elements support event handler content attributes, + as described in event handler content attributes in HTML. +
++ All event handler content attributes + noted by HTML as being supported by all HTMLElements + are supported by all MathML elements as well, as defined in the MathMLElement IDL. +
+
+ The
+ mathcolor
+ and
+ mathbackground
+ attributes, if present, must
+ have a value that is a
+ <color>.
+ In that case, the user agent is expected to treat these attributes as a
+ presentational hint setting the element's
+ color and
+ background-color
+ properties to the corresponding values.
+ The mathcolor
attribute describes the foreground fill
+ color of MathML text, bars etc
+ while the mathbackground
+ attribute describes the background color of an element.
+
+ The
+ mathsize
+ attribute, if present, must
+ have a value that is a valid <length-percentage>.
+ In that case, the user agent is expected to treat the attribute as a
+ presentational hint setting the element's
+ font-size
+ property to the corresponding value.
+ The mathsize
property indicates the desired height
+ of glyphs in math formulas but also scales other parts (spacing, shifts,
+ line thickness of bars etc) accordingly.
+
+ The
+ displaystyle
+ attribute, if present, must have a value that is a boolean.
+ In that case, the user agent is expected to treat the attribute as a
+ presentational hint setting the element's
+ math-style
+ property to the corresponding value.
+ More precisely, an
+ ASCII case-insensitive match
+ to true
is mapped to normal
while
+ an ASCII case-insensitive match to false
is mapped to compact
.
+ This attribute indicates whether formulas should try to minimize
+ the logical height (value is false
) or not
+ (value is true
) e.g. by changing the size of content or
+ the layout of scripts.
+
+ The
+ scriptlevel
+ attribute, if present, must have value
+ +<U>
, -<U>
or <U>
+ where <U>
is an
+ unsigned-integer.
+ In that case
+ the user agent is expected to treat the scriptlevel
+ attribute as a
+ presentational hint setting the element's
+ math-depth
+ property to the corresponding value.
+ More precisely,
+ +<U>
, -<U>
and
+ <U>
+ are respectively mapped to
+ add(<U>)
+ add(<-U>)
+ and <U>
.
+
+ displaystyle
and scriptlevel
values
+ are automatically adjusted within MathML elements.
+ To fully implement these attributes, additional CSS properties must be
+ specified in the user agent stylesheet
+ as described in A. User Agent Stylesheet.
+ In particular, for all MathML elements a default
+ font-size: math
is specified to ensure that
+ scriptlevel
changes are taken into account.
+
+ In this example, an munder
+ element is used to attach a
+ script "A" to a base "∑". By default, the summation
+ symbol is rendered with the font-size inherited from its
+ parent and the A as a scaled down subscript.
+ If displaystyle is true, the summation symbol is drawn
+ bigger and the "A" becomes an underscript.
+ If scriptlevel is reset to 0 on the "A", then it will
+ use the same font-size as the top-level math
root.
+
<math>
+ <munder>
+ <mo>∑</mo>
+ <mi>A</mi>
+ </munder>
+ <munder displaystyle="true">
+ <mo>∑</mo>
+ <mi>A</mi>
+ </munder>
+ <munder>
+ <mo>∑</mo>
+ <mi scriptlevel="0">A</mi>
+ </munder>
+</math>
+
+ \displaystyle
, \textstyle
,
+ \scriptstyle
, and \scriptscriptstyle
correspond
+ to displaystyle
and scriptlevel
as
+ true
and 0
,
+ false
and 0
,
+ false
and 1
,
+ and false
and 2, respectively.
+ The attributes + intent and arg + are reserved as valid attributes.
+
+ This specification does not define any observable behavior that is
+ specific to the intent
and arg
attributes.
+
+ MathML can be mixed with HTML and SVG as described in the relevant + specifications [HTML] [SVG]. +
+
+ When evaluating the SVG requiredExtensions
+ attribute, user agents must claim support for the language extension
+ identified by the
+ MathML namespace.
+
+ In this example, inline MathML and SVG elements are used inside
+ an HTML document. SVG elements <switch>
and
+ <foreignObject>
(with
+ proper <requiredExtensions>
) are used to
+ embed a MathML formula with a text fallback, inside a diagram.
+ HTML input
element is used within the
+ mtext
+ to include an interactive input field inside a mathematical
+ formula. See also 3.7 Semantics and Presentation
+ for an example of SVG and HTML inside an annotation-xml
+ element.
+
<svg style="font-size: 20px" width="400px" height="220px" viewBox="0 0 200 110">
+ <g transform="translate(10,80)">
+ <path d="M 0 0 L 150 0 A 75 75 0 0 0 0 0
+ M 30 0 L 30 -60 M 30 -10 L 40 -10 L 40 0"
+ fill="none" stroke="black"></path>
+ <text transform="translate(10,20)">1</text>
+ <switch transform="translate(35,-40)">
+ <foreignObject width="200" height="50"
+ requiredExtensions="http://www.w3.org/1998/Math/MathML">
+ <math>
+ <msqrt>
+ <mn>2</mn>
+ <mi>r</mi>
+ <mo>−</mo>
+ <mn>1</mn>
+ </msqrt>
+ </math>
+ </foreignObject>
+ <text>\sqrt{2r - 1}</text>
+ </switch>
+ </g>
+</svg>
+
+<p>
+ Fill the blank:
+ <math>
+ <msqrt>
+ <mn>2</mn>
+ <mtext><input onchange="..." size="2" type="text"></mtext>
+ <mo>−</mo>
+ <mn>1</mn>
+ </msqrt>
+ <mo>=</mo>
+ <mn>3</mn>
+ </math>
+</p>
+
+ User agents must support various CSS features mentioned in this + specification, including new ones described in + 4. CSS Extensions for Math Layout. + They must follow the computation rule for + display: contents. +
+
+ In this example, the MathML formula inherits the CSS color of its
+ parent and uses the font-family
specified via the
+ style attribute.
+
<div style="width: 15em; color: blue">
+ This mathematical formula with a big summation and the number pi
+ <math display="block" style="font-family: STIX Two Math">
+ <mrow>
+ <munderover>
+ <mo>∑</mo>
+ <mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow>
+ <mrow><mo>+</mo><mn>∞</mn></mrow>
+ </munderover>
+ <mfrac>
+ <mn>1</mn>
+ <msup><mi>n</mi><mn>2</mn></msup>
+ </mfrac>
+ </mrow>
+ <mo>=</mo>
+ <mfrac>
+ <msup><mi>π</mi><mn>2</mn></msup>
+ <mn>6</mn>
+ </mfrac>
+ </math>
+ is easy to prove.
+</div>
+
+
+ All documents containing MathML Core elements must include
+ CSS rules described in A. User Agent Stylesheet
+ as part of user-agent level style sheet defaults.
+ In particular, this adds !important
rules to force
+ writing mode
+ to horizontal-lr
on all MathML elements.
+
+ The float
+ property does
+ not create floating of elements whose parent's computed
+ display
value is
+ block math
or inline math
,
+ and does not take them out-of-flow.
+
+ The ::first-line and
+ ::first-letter
+ pseudo-elements do not apply to elements whose computed
+ display
value is
+ block math
or inline math
, and such
+ elements do not contribute a first formatted line or first letter
+ to their ancestors.
+
+ The following CSS features are not supported and must be ignored: +
+white-space
+ is treated as nowrap
on all MathML elements.
+ align-content
, justify-content
,
+ align-self
, justify-self
have
+ no effects on MathML elements.
+ + User agents supporting + Web application APIs + must ensure that they keep the visual rendering of MathML + synchronized with the [DOM] tree, in particular perform necessary + updates when MathML attributes are modified dynamically. +
+
+ All the nodes representing MathML elements in the DOM
+ must implement, and expose to scripts, the following
+ MathMLElement
interface.
+
WebIDL[Exposed=Window]
+interface MathMLElement
: Element { };
+MathMLElement
includes GlobalEventHandlers;
+MathMLElement
includes HTMLOrForeignElement
;
+ The GlobalEventHandlers
and
+ HTMLOrForeignElement
+ interfaces are defined in [HTML].
+ In the following example, a MathML formula is used to render + the fraction "α over 2". When clicking the red α, it is changed + into a blue β. +
+<script>
+ function ModifyMath(mi) {
+ mi.style.color = 'blue';
+ mi.textContent = 'β';
+ }
+</script>
+<math>
+ <mrow>
+ <mfrac>
+ <mi style="color: red" onclick="ModifyMath(this)">α</mi>
+ <mn>2</mn>
+ </mfrac>
+ </mrow>
+</math>
+
+ + Because math fonts generally contain very tall glyphs such as big + integrals, using typographic metrics is important to avoid + excessive line spacing of text. As a consequence, + user agents must take into account the USE_TYPO_METRICS flag from + the OS/2 table [OPEN-FONT-FORMAT] when performing text layout. +
+
+ MathML provides the ability for authors to allow for
+ interactivity in supporting interactive user agents
+ using the same concepts, approach and guidance to
+ Focus
+ as described in HTML, with modifications or
+ clarifications regarding application
+ for MathML as described in this section.
+
+ When an element is focused, all applicable CSS + focus-related pseudo-classes as defined in + Selectors Level 3 + apply, as defined in that specification. +
+
+ The contents of embedded math
elements
+ (including HTML elements inside token elements)
+ contribute to the sequential focus order of the containing owner HTML
+ document (combined sequential focus order).
+
+ The default display
property
+ is described in A. User Agent Stylesheet:
+
<math>
root,
+ it is equal to inline math
or block math
+ according to the value of the display
attribute.
+ mtable
,
+ mtr
,
+ mtd
it is respectively equal to
+ inline-table
,
+ table-row
and
+ table-cell
.
+ maction
+ and semantics
elements, it is equal to
+ none
.
+ block math
.
+ + In order to specify math layout in different + writing modes, + this specification uses concepts from [CSS-WRITING-MODES-4]: +
+horizontal-lr
and ltr
.
+ See Figure 4,
+ Figure 5 and
+ Figure 6 for examples of other
+ writing modes that are sometimes used for math layout.
+ + Boxes used for MathML elements rely on several parameters in order to perform layout + in a way that is compatible with CSS but also to take into account + very accurate positions and spacing within math formulas: +
++ Block metrics. + The block size, + first baseline set + and + last baseline set. + The following baselines are defined for MathML boxes: +
+Given a MathML box, the following offsets are defined:
+Here are examples of offsets obtained from line-relative + metrics:
+ltr
and
+ is the inline size of the box −
+ (line-left offset + inline size of
+ the child box) otherwise.
+ horizontal-lr
,
+ vertical-rl
or sideways-rl
+ and is the line-descent otherwise.
+ + Each MathML element has an associated math content box, which is + calculated as described in this chapter's layout algorithms using the following + structure: +
++ The following extra steps must be performed: +
++ The box metrics and offsets of the + padding box + are obtained from the + content box + by taking into account the corresponding + padding + properties as described in CSS. +
++ The baselines + of the padding box are the same as the one of the content box. +
++ If the content box has a top accent attachment + then the padding box has the same property, increased + by the inline-start padding. If the content box has an + italic correction then the padding box has the + same property, increased by the inline-end padding. +
++ The box metrics and offsets of the + border box + are obtained from the + padding box + by taking into account the corresponding + border-width + property as described in CSS. +
++ In general, the baselines of the border box are the same as + the one of the padding box. However, if the line-over border is + positive then the ink-over baseline is set to the + line-over edge of the border box and if + the line-under border is + positive then the ink-under baseline is set to the + line-under edge of the border box. +
++ If the padding box has a top accent attachment + then the border box has the same property, increased by + the border-width of its inline-start egde. If the + padding box has an italic correction then the + border box has the same property, increased by the + border-width of its inline-end egde. +
++ The box metrics and offsets of the + margin box + are obtained from the + border box + by taking into account the corresponding + margin + properties as described in CSS. +
++ The baselines + of the margin box are the same as the one of the border box. +
++ If the padding box has a top accent attachment + then the margin box has the same property, increased + by the inline-start margin. If the padding box has an + italic correction then the margin box has the + same property, increased by the inline-end margin. +
++ During box layout, optional + inline stretch size constraint and + block stretch size constraint parameters may be used on + embellished operators. The former indicates + a target size that a core operator stretched along + the inline axis should cover. + The latter indicates an ink line-ascent and ink line-descent + that a core operator stretched along the block axis + should cover. + Unless specified otherwise, these parameters are ignored during + box layout and child boxes are laid out without + any stretch size constraint. +
+An anonymous box is a box without any associated
+ element in the DOM tree and which is generated for layout purpose
+ only. The properties of anonymous boxes are inherited from the
+ enclosing non-anonymous box while non-inherited properties have
+ their initial value.
+ An anonymous <mrow> box is
+ an anonymous box with display
equal to
+ block math
and which is laid out as
+ described in section 3.3.1.2 Layout of <mrow>
.
+
If a MathML element + generates an anonymous <mrow> box then it wraps + its children in an anonymous <mrow> box. I.e., + its subtree in the visual formatting model is made of an + anonymous <mrow> box + which itself contains the boxes associated to the children of this + MathML element. +
+In the following example, the math
and
+ mrow
elements are laid out as described in section
+ 3.3.1.2 Layout of <mrow>
. In particular, the
+ <math>
element adds proper spacing around its
+ <mo>≠</mo>
child and the
+ <mrow>
element stretches its
+ <mo>|</mo>
children vertically.
+
The mtd
element has
+ display: table-cell
and the
+ msqrt
element displays a radical symbol around its
+ children. However, they also place their children in a way that
+ is similar to what is described in section
+ 3.3.1.2 Layout of <mrow>
: the
+ <msqrt>
element adds proper spacing around its
+ <mo>+</mo>
child while the
+ <mtd>
element stretches its
+ <mo>
children vertically.
+ In order to make this possible,
+ each of these two elements
+ generates an anonymous <mrow> box.
+
<math>
+ <mrow>
+ <mo>|</mo>
+ <mtable>
+ <mtr>
+ <mtd>
+ <mi>x</mi>
+ </mtd>
+ <mtd>
+ <mo>(</mo>
+ <mfrac linethickness="0">
+ <mn>5</mn>
+ <mn>3</mn>
+ </mfrac>
+ <mo>)</mo>
+ </mtd>
+ </mtr>
+ <mtr>
+ <mtd>
+ <msqrt>
+ <mn>7</mn>
+ <mo>+</mo>
+ <mn>2</mn>
+ </msqrt>
+ </mtd>
+ <mtd>
+ <mi>y</mi>
+ </mtd>
+ </mtr>
+ </mtable>
+ <mo>|</mo>
+ </mrow>
+ <mo>≠</mo>
+ <mn>0</mn>
+</math>
+
+ MathML elements can overlap due to various spacing rules. They
+ can as well contain extra graphical items
+ (bars, radical symbol, etc).
+ A MathML element with computed style
+ display: block math
+ or display: inline math
generates a new stacking
+ context. The painting order
+ of in-flow children of such a MathML element
+ is exactly the same as block elements. The extra graphical
+ items are painted after text and background (right after
+ step 7.2.4 for display: inline math
and right after
+ step 7.2 for display: block math
).
+
+ Token elements in presentation markup are broadly intended to + represent the smallest units of mathematical notation which carry + meaning. Tokens are roughly analogous to words in text. However, + because of the precise, symbolic nature of mathematical notation, the + various categories and properties of token elements figure + prominently in MathML markup. By contrast, in textual data, + individual words rarely need to be marked up or styled specially. +
+
+ The
+ mtext
+ element is used to represent arbitrary text
+ that should be rendered as itself. In general, the
+ <mtext>
element is intended to denote
+ commentary text.
+
+ The <mtext>
element accepts the attributes described
+ in 2.1.3 Global Attributes.
+
In the following example, mtext
is used
+ to put conditional words in a definition:
<math>
+ <mi>y</mi>
+ <mo>=</mo>
+ <mrow>
+ <msup>
+ <mi>x</mi>
+ <mn>2</mn>
+ </msup>
+ <mtext> if </mtext>
+ <mrow>
+ <mi>x</mi>
+ <mo>≥</mo>
+ <mn>1</mn>
+ </mrow>
+ <mtext> and </mtext>
+ <mn>2</mn>
+ <mtext> otherwise.</mtext>
+ </mrow>
+</math>
+
+
+ If the element does not have its computed
+ display
property equal to
+ block math
or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ If the <mtext>
element contains only text
+ content without
+ forced line break
+ or
+ soft wrap opportunity
+ then, the anonymous child node generated for that text is
+ laid out as defined in the relevant CSS specification and:
+
<mtext>
element.
+
+ Otherwise, the mtext
element is laid out as a
+ block box
+ and corresponding min-content inline size,
+ max-content inline size,
+ inline size, block size,
+ first baseline set and last baseline set are
+ used for the math content box.
+
+ The + mi + element represents a symbolic name or + arbitrary text + that should be rendered as an identifier. Identifiers can include + variables, function names, and symbolic constants. +
+
+ The <mi>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following attribute:
+
mathvariant
The layout algorithm is the same as the mtext
element. The
+ user agent stylesheet
+ must contain the following property in order to implement automatic
+ italic via the text-transform value introduced in 4.2 New text-transform
value:
+
mi {
+ text-transform: math-auto;
+}
+
+
+ The
+ mathvariant
+ attribute,
+ if present, must be an
+ ASCII case-insensitive
+ match of normal
.
+ In that case, the user agent is expected to treat the attribute as a
+ presentational hint setting the element's
+ text-transform
+ property to none
. Otherwise it has no effects.
+
In [MathML3], the mathvariant
attribute was used
+ to define logical classes of token elements, each class providing
+ a collection of typographically-related symbolic tokens with
+ specific meaning within a given mathematical expression.
+ In MathML Core, this attribute is only used to cancel automatic
+ italic of the mi
element. For other use cases, the proper
+ Mathematical Alphanumeric Symbols [UNICODE] should be used
+ instead. See also section C. Mathematical Alphanumeric Symbols.
+
In the following example, mi
is used to render
+ variables and function names. Note that identifiers containing a
+ single letter are italic by default.
<math>
+ <mi>cos</mi>
+ <mo>,</mo>
+ <mi>c</mi>
+ <mo>,</mo>
+ <mi mathvariant="normal">c</mi>
+</math>
+
+ + The + mn + element represents a "numeric literal" or + other data that should be rendered as a numeric literal. Generally + speaking, a numeric literal is a sequence of digits, perhaps including a + decimal point, representing an unsigned integer or real number. +
+
+ The <mn>
element accepts the attributes described
+ in 2.1.3 Global Attributes. Its layout algorithm is
+ the same as the
+ mtext
element.
+
In the following example, mn
is used to
+ write a decimal number.
<math>
+ <mn>3.141592653589793</mn>
+</math>
+
+
+ The
+ mo
+ element represents an
+ operator or anything that should be rendered as an operator.
+ In general, the notational conventions for mathematical operators
+ are quite complicated, and therefore MathML provides a relatively
+ sophisticated mechanism for specifying the rendering behavior of an
+ <mo>
element.
+ As a consequence, in MathML the + list of things that should "render as an operator" includes a + number of notations that are not mathematical operators in the + ordinary sense. Besides ordinary operators with infix, prefix, or + postfix forms, these include fence characters such as braces, + parentheses, and "absolute value" bars; separators such as comma + and semicolon; and mathematical accents such as a bar or tilde over + a symbol. This chapter uses the term "operator" to refer to + operators in this broad sense. +
+
+ The <mo>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following
+ attributes:
+
form
fence
separator
lspace
rspace
stretchy
symmetric
maxsize
minsize
largeop
movablelimits
+ This specification does not define any observable behavior that is + specific to the fence and separator attributes. +
+fence
and separator
+ to describe specific semantics of operators.
+ The default values may be determined from the
+ Operators_fence
and Operators_separator
tables, or equivalently
+ the human-readable version
+ of the operator dictionary.
+
+ In the following example, the mo
element
+ is used for the binary operator +. Default spacing is symmetric
+ around that operator. A tighter spacing is used if you rely
+ on the form
attribute to force it to be
+ treated as a prefix operator.
+ Spacing can also be specified explicitly using the
+ lspace
and
+ rspace
attributes.
+
<math>
+ <mn>1</mn>
+ <mo>+</mo>
+ <mn>2</mn>
+ <mo form="prefix">+</mo>
+ <mn>3</mn>
+ <mo lspace="2em">+</mo>
+ <mn>4</mn>
+ <mo rspace="3em">+</mo>
+ <mn>5</mn>
+</math>
+
+
+ Another use case is for big operators such as summation.
+ When displaystyle is true, such an operator is drawn
+ larger but one can change that with the largeop
attribute.
+ When displaystyle is false, underscripts are actually
+ rendered as subscripts but one can change that with the
+ movablelimits
attribute.
+
<math>
+ <mrow displaystyle="true">
+ <munder>
+ <mo>∑</mo>
+ <mn>5</mn>
+ </munder>
+ <munder>
+ <mo largeop="false">∑</mo>
+ <mn>6</mn>
+ </munder>
+ </mrow>
+ <mrow>
+ <munder>
+ <mo>∑</mo>
+ <mn>5</mn>
+ </munder>
+ <munder>
+ <mo movablelimits="false">∑</mo>
+ <mn>7</mn>
+ </munder>
+ </mrow>
+</math>
+
+ Operators are also used for stretchy symbols such as fences,
+ accents, arrows etc. In the following example, the vertical arrow
+ stretches to the height of the mspace
element.
+ One can override default stretch behavior with the
+ stretchy
attribute e.g. to force an unstretched arrow.
+ The symmetric
attribute allows to indicate whether
+ the operator
+ should stretch symmetrically above and below the math axis
+ (fraction bar).
+ Finally the minsize
and maxsize
attributes add
+ additional constraints over the stretch size.
+
<math>
+ <mfrac>
+ <mspace height="50px" depth="50px" width="10px" style="background: blue"/>
+ <mspace height="25px" depth="25px" width="10px" style="background: green"/>
+ </mfrac>
+ <mo>↑</mo>
+ <mo stretchy="false">↑</mo>
+ <mo symmetric="true">↑</mo>
+ <mo minsize="250px">↑</mo>
+ <mo maxsize="50px">↑</mo>
+</math>
+
+ Note that the default properties of operators are + dictionary-based, as explained in + 3.2.4.2 Dictionary-based attributes. For example a binary + operator typically has default symmetric spacing around it while a + fence is generally stretchy by default. +
++ A MathML Core element is an + embellished operator + if it is: +
+mo
element;mfrac
,
+ whose first in-flow child exists and is an
+ embellished operator;
+ mpadded
,
+ whose in-flow children consist (in any order) of one
+ embellished operator and zero or more
+ space-like elements.
+
+ The core operator of an embellished operator
+ is the <mo>
element defined recursively as
+ follows:
+
mo
+ element; is the element itself.mfrac
+ element is the core operator of its first in-flow child.
+ mpadded
+ is the core operator of its unique embellished operator
+ in-flow child.
+
+ The stretch axis of an embellished operator
+ is inline if its
+ core operator contains only text content
+ made of a single character c
, and that character has
+ inline intrinsic stretch axis.
+ Otherwise, the stretch axis of the embellished operator
+ is block.
+
+ The same definitions apply for boxes in the + visual formatting model where an + anonymous <mrow> box is treated as a + grouping element. +
+
+ The form
+ property of an embellished operator is either
+ infix
, prefix
or
+ postfix
.
+ The corresponding form attribute on the
+ mo
element, if present, must be an
+ ASCII case-insensitive
+ match to one of these values.
+
+ The algorithm for determining the form
of an embellished operator is as follows:
+
form
attribute is present and valid
+ on the core operator, then its
+ ASCII lowercased value
+ is used.
+ mpadded
or
+ msqrt
with more than one in-flow child
+ (ignoring all space-like children) then it has
+ form prefix
.
+ mpadded
or
+ msqrt
+ with more than one in-flow child
+ (ignoring all space-like children) then it has
+ form postfix
.
+ postfix
.
+ infix
.
+
+ The
+ stretchy
,
+ symmetric
,
+ largeop
,
+ movablelimits
+ properties of an embellished operator are
+ either false
or true
. In the latter
+ case, it
+ is said that the embellished operator has the
+ property.
+ The corresponding stretchy, symmetric, largeop, movablelimits attributes on the
+ mo
element, if present, must be a
+ boolean.
+
+ The
+ lspace
,
+ rspace
,
+ minsize
+ properties of an embellished operator are
+ <length-percentage>.
+ The maxsize
property
+ of an embellished operator is either a
+ <length-percentage> or ∞.
+ The
+ lspace,
+ rspace,
+ minsize and
+ maxsize attributes on the
+ mo
element, if present,
+ must be a <length-percentage>.
+
+ The algorithm for determining the properties of + an embellished operator is as follows: +
+stretchy
,
+ symmetric
,
+ largeop
,
+ movablelimits
,
+ lspace
,
+ rspace
,
+ maxsize
or
+ minsize
+ attribute is present and valid
+ on the core operator, then the
+ ASCII lowercased value
+ of this property is used.form
of an embellished operator.Content
, then set Category
+ to the result of the
+ algorithm to determine the category of an operator
+ (Content, Form)
+ where Form
is the form
+ calculated at the previous step.
+ Category
is Default
and
+ the form
+ of embellished operator was not explicitly specified
+ as an attribute on its core operator:
+ Category
to the result of the
+ algorithm to determine the category of an operator
+ (Content, Form)
where Form
is
+ infix
.Category
is Default
, then
+ run the algorithm again with Form
set to
+ postfix
.Category
is Default
, then
+ run the algorithm again with Form
set to
+ prefix
.Category
.
+ When used during layout,
+ the values of stretchy
,
+ symmetric
,
+ largeop
,
+ movablelimits
,
+ lspace
,
+ rspace
,
+ minsize
are
+ obtained by the
+ algorithm for determining the properties of an embellished operator with the following extra resolutions:
lspace
,
+ rspace
are interpreted
+ relative to the value read from the dictionary
+ or to the fallback value above.
+ minsize
+ and maxsize
are described in
+ 3.2.4.3 Layout of operators.
+ lspace
, rspace
,
+ minsize
and maxsize
rely on the
+ font style of the core operator, not the one of the
+ embellished operator.
+
+ If the <mo>
element does not have its computed
+ display
property equal to
+ block math
or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ The text of the operator must only be painted if the
+ visibility of
+ the <mo>
element is visible
.
+ In that case, it must be painted with the
+ color
+ of the <mo>
element.
+
Operators are laid out as follows:
+<mo>
element is not
+ made
+ of a single character c
then fall back to the
+ layout algorithm of 3.2.1.1 Layout of <mtext>
.
+ stretchy
property:
+ c
in the inline direction
+ with the
+ first available font
+ then fall back to the
+ layout algorithm of 3.2.1.1 Layout of <mtext>
.
+ <mtext>
.
+ Tinline
+ then
+ fall back to the
+ layout algorithm of 3.2.1.1 Layout of <mtext>
.
+ Tinline
.
+ Tinline
and
+ at position determined by the previous box metrics.
+ c
in the block direction
+ with the
+ first available font
+ then fall back to the
+ layout algorithm of 3.2.1.1 Layout of <mtext>
.
+ (Uascent, Udescent)
+ then
+ fall back to the
+ layout algorithm of 3.2.1.1 Layout of <mtext>
.
+ symmetric
property
+ then set the target sizes
+ Tascent
and
+ Tdescent
to
+ Sascent
and
+ Sdescent
respectively:
+ Sascent
=
+ max(
+ Uascent
− AxisHeight,
+ Udescent
+ AxisHeight
+ ) + AxisHeight
+ Sdescent
=
+ max(
+ Uascent
− AxisHeight,
+ Udescent
+ AxisHeight
+ ) − AxisHeight
+ Uascent
and
+ Udescent
respectively.
+ Tascent
− AxisHeight = Tdescent
+ AxisHeight means that
+ an operator stretching exactly
+ Tascent
above the baseline
+ and Tdescent
below the
+ baseline would actually stretch symmetrically above
+ and below the math axis.
+ Sascent
and
+ Sdescent
are the minimal
+ values, that are respectively not less than
+ Uascent
and
+ Udescent
, which satisfy
+ this property.
+ minsize
and maxsize
+ be the minsize
and maxsize
properties on the
+ operator. Percentage values are interpreted relative
+ to the height of the glyph for c
.
+ Let T
=
+ Tascent
+
+ Tdescent
be the target size.
+ If minsize
< 0 then set minsize
+ to 0.
+ If maxsize
< minsize
then
+ set maxsize
to minsize
.
+ With 0 ≤ minsize
≤ maxsize
:
+ T
≤ 0 then set
+ Tascent
to
+ minsize
/ 2 + AxisHeight and
+ then set Tdescent
+ to minsize
−
+ Tascent
.
+ T
< minsize
+ then set Tascent
to
+ max(0, (Tascent
− AxisHeight) × minsize
/ T
+ AxisHeight) and
+ Tdescent
+ to minsize
−
+ Tascent
.
+ maxsize
< T
+ then set Tascent
to
+ max(0, (Tascent
− AxisHeight) × maxsize
/ T
+ AxisHeight) and
+ Tdescent
+ to maxsize
−
+ Tascent
.
+ maxsize
is value ∞ is
+ interpreted above as being larger than any other size,
+ i.e.
+ minsize ≤ maxsize
is always true while
+ maxsize < minsize
and
+ maxsize < T
are always false.
+ minsize
≤ T
≤ maxsize
holds.
+ Additionnally, if the target values correspond to symmetric stretching with respect to the math axis then property
+ Tascent
− AxisHeight = Tdescent
+ AxisHeight is preserved.
+ Tascent
+
+ Tdescent
.
+ 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:
+ 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 + Δ.
+ These centers have coordinates "½(ascent − descent)"
+ so Δ = [(ascent of stretchy glyph − descent of stretchy glyph) − (Tascent
− Tdescent
)] / 2.
+ Tascent
+
+ Tdescent
+ and at position determined by the previous box metrics
+ shifted by Δ towards the line-over.
+ largeop
property and
+ if math-style
on
+ the <mo>
element is normal
,
+ then:
+
+ 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 3.2.1.1 Layout of <mtext>
.
+
<mtext>
.
+ If the algorithm to shape a stretchy glyph has been + used for one of the step above, then the italic correction + of the math content is set to the value returned by that algorithm. +
++ The + mspace + empty element represents a blank space of any + desired size, as set by its attributes. +
+
+ The <mspace>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following
+ attributes:
+
The + width, + height, + depth, if present, must + have a value that is a valid <length-percentage>. +
+width
+ attribute is present, valid and not a percentage then
+ that attribute is used as a
+ presentational hint
+ setting the element's
+ width
+ property to the corresponding value.
+ height
+ attribute is absent, invalid or a percentage then the requested
+ line-ascent is 0
.
+ Otherwise the requested line-ascent is the resolved
+ value of the height
attribute, clamping
+ negative values to 0
.
+ height
and depth
attributes
+ are present, valid and not a percentage then they are used as a
+ presentational hint
+ setting the element's
+ height
+ property to the concatenation of the strings
+ "calc(
", the height
attribute value,
+ " +
", the depth
attribute value,
+ and ")
".
+ If only one of these attributes is
+ present, valid and not a percentage then it is treated as a
+ presentational hint
+ setting the element's
+ height
+ property to the corresponding value.
+ In the following example, mspace
is used to
+ force spacing within the formula (a 1px blue border is
+ added to easily visualize the space):
<math>
+ <mn>1</mn>
+ <mspace width="1em"
+ style="border-top: 1px solid blue"/>
+ <mfrac>
+ <mrow>
+ <mn>2</mn>
+ <mspace depth="1em"
+ style="border-left: 1px solid blue"/>
+ </mrow>
+ <mrow>
+ <mn>3</mn>
+ <mspace height="2em"
+ style="border-left: 1px solid blue"/>
+ </mrow>
+ </mfrac>
+</math>
+
+
+ If the <mspace>
element does not have its
+ computed
+ display
property equal to
+ block math
or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise,
+ the <mspace>
element is laid out as shown on
+ Figure 9.
+ The min-content inline size,
+ max-content inline size and inline size of the math
+ content are equal to the resolved value of the
+ width property.
+ The block size of the math content is equal to the resolved
+ value of the height property.
+ The line-ascent of the math content is equal to the
+ requested line-ascent determined above.
+
+ A number of MathML presentation elements are "space-like" in the + sense that they typically render as whitespace, and do not affect + the mathematical meaning of the expressions in which they appear. + As a consequence, these elements often function in somewhat + exceptional ways in other MathML expressions. +
++ A MathML Core element is a + space-like element + if it is: +
+mtext
or
+ mspace
;
+ mpadded
+ all of whose in-flow children are space-like.
+ + The same definitions apply for boxes in the + visual formatting model where an + anonymous <mrow> box is treated as a + grouping element. +
+mphantom
is not
+ automatically defined to be space-like, unless its content is
+ space-like. This is because operator spacing is affected by
+ whether adjacent elements are space-like.
+ Since the <mphantom>
element is
+ primarily intended as an aid in aligning expressions, operators
+ adjacent to an <mphantom>
should behave
+ as if they were adjacent to the contents of the
+ <mphantom>
, rather than to an equivalently
+ sized area of whitespace.
+ + ms + element is used to represent + "string literals" in expressions meant to be interpreted by computer + algebra systems or other systems containing "programming languages". +
+
+ The <ms>
element accepts the attributes described
+ in 2.1.3 Global Attributes. Its layout algorithm is
+ the same as the mtext
element.
+
In the following example, ms
is used to
+ write a literal string of characters:
<math>
+ <mi>s</mi>
+ <mo>=</mo>
+ <ms>"hello world"</ms>
+</math>
+
+ lquote
and
+ rquote
attributes to respectively specify the strings
+ to use as opening and closing quotes. These are no longer supported
+ and the quotes must instead be specified as part of the text of the
+ <ms>
element. One can add CSS rules to legacy
+ documents in order to preserve visual rendering. For example,
+ in left-to-right direction:
+ ms:before, ms:after {
+ content: "\0022";
+}
+ms[lquote]:before {
+ content: attr(lquote);
+}
+ms[rquote]:after {
+ content: attr(rquote);
+}
+ Besides tokens there are several families of MathML presentation + elements. One family of elements deals with various "scripting" + notations, such as subscript and superscript. Another family is + concerned with matrices and tables. The remainder of the elements, + discussed in this section, describe other basic notations such as + fractions and radicals, or deal with general functions such as + setting style properties and error handling. +
+
+ The
+ mrow
+ element is used to group together any number of sub-expressions, usually
+ consisting of one or more <mo>
elements acting as
+ "operators" on one or more other expressions that are their "operands".
+
In the following example, mrow
is used to
+ group a sum "1 + 2/3" as a fraction numerator (first child
+ of mfrac
) and to construct a fenced expression
+ (first child of msup
) that is raised to the power of 5.
+ Note that mrow
alone does not add visual fences
+ around its grouped content, one has to explicitly specify them
+ using the mo
element.
+
+ Within the mrow
elements, one can see that
+ vertical alignment of children (according to the
+ alphabetic baseline or the mathematical baseline)
+ is properly performed, fences are vertically stretched and
+ spacing around the binary + operator automatically calculated.
+
<math>
+ <msup>
+ <mrow>
+ <mo>(</mo>
+ <mfrac>
+ <mrow>
+ <mn>1</mn>
+ <mo>+</mo>
+ <mfrac>
+ <mn>2</mn>
+ <mn>3</mn>
+ </mfrac>
+ </mrow>
+ <mn>4</mn>
+ </mfrac>
+ <mo>)</mo>
+ </mrow>
+ <mn>5</mn>
+ </msup>
+</math>
+
+
+ The <mrow>
element accepts the attributes described
+ in 2.1.3 Global Attributes. An <mrow>
+ element with in-flow children
+ child1, child2, …, childN
+ is laid out as shown on Figure 10. The child boxes
+ are put in a row one after the other with all their
+ alphabetic baselines
+ aligned.
+
+ The algorithm for stretching operators along the block axis + consists in the following steps: +
+LToStretch
containing
+ embellished operators with
+ a stretchy
property and block stretch axis;
+ and a second list LNotToStretch
.
+ LNotToStretch
.
+ If LToStretch
is empty then stop.
+ If LNotToStretch
is empty, perform
+ layout with block stretch size constraint
+ (0, 0)
for
+ all the items of LToStretch
.
+ Uascent
+ and Udescent
as respectively the maximum
+ ink ascent and maximum ink descent of the margin boxes of
+ in-flow children that
+ have been laid out in the previous step.
+ LToStretch
with
+ block stretch size constraint
+ (Uascent, Udescent)
.
+
+ If the box is not an anonymous <mrow> box
+ and the associated element does not have its computed
+ display
property equal to
+ block math
or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ A child box is slanted if it is not an + embellished operator + and has nonzero italic correction. +
+lspace
and
+ rspace
.
+ + The min-content inline size + (respectively max-content inline size) are + calculated using the following algorithm: +
+add-space
to true if
+ the box corresponds to a math
element
+ or is not an
+ embellished operator; and to false otherwise.
+ inline-offset
to 0.previous-italic-correction
to 0.inline-offset
by
+ previous-italic-correction
.
+ add-space
is true then
+ increment inline-offset
by
+ its lspace
property.
+ inline-offset
by
+ the min-content inline size
+ (respectively max-content inline size) of
+ the child's margin box.
+ previous-italic-correction
to
+ its italic correction. Otherwise set it to 0.
+ add-space
is true then
+ increment inline-offset
by
+ its rspace
property.
+ inline-offset
by
+ previous-italic-correction
.
+ inline-offset
.
+ + The in-flow children are laid out using the + algorithm for stretching operators along the block axis. +
++ The inline size of the math content is calculated like + the min-content inline size and + max-content inline size of the math content, + using the inline size of the + in-flow children's margin boxes instead. +
++ The ink line-ascent (respectively line-ascent) + of the math content + is the maximum of the + ink line-ascents (respectively line-ascents) + of all the in-flow children's margin boxes. Similarly, + the ink line-descent (respectively line-descent) + of the math content is the maximum of the ink line-descents + (respectively ink line-ascents) + of all the in-flow children's margin boxes. +
++ The in-flow children are positioned using the following + algorithm: +
+add-space
to true if
+ the box corresponds to a math
element
+ or is not an
+ embellished operator; and to false otherwise.
+ inline-offset
to 0.previous-italic-correction
to 0.inline-offset
by
+ previous-italic-correction
.
+ add-space
is true then
+ increment inline-offset
by
+ its lspace
property.
+ inline-offset
and its block offset such
+ that the alphabetic baseline of the child is aligned with the alphabetic baseline.
+ inline-offset
by
+ the inline size of the child's margin box.
+ previous-italic-correction
to
+ its italic correction. Otherwise set it to 0.
+ add-space
is true then
+ increment inline-offset
by
+ its rspace
property.
+ The italic correction of the math content is set to the italic
+ correction of the last in-flow child, which is
+ the final value of previous-italic-correction
.
+ The + mfrac + element is used for fractions. It can also be used to mark up + fraction-like objects such as binomial coefficients and Legendre symbols. +
+
+ If the <mfrac>
element does not have its computed
+ display
property equal to block math
+ or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ The <mfrac>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the
+ following attribute:
+
linethickness
+ The + linethickness + attribute indicates the fraction line thickness + to use for the fraction bar. + If present, it must + have a value that is a valid <length-percentage>. + If the attribute is absent or has an invalid value, + FractionRuleThickness is used as the default + value. A percentage is interpreted relative to that default value. + A negative value is interpreted as 0. +
+The following example contains four fractions
+ with different linethickness
values. The bars are always
+ aligned with the middle of plus and minus signs.
+ The numerator and denominator are horizontally centered.
+ The fractions that are not in displaystyle
+ use smaller gaps and font-size.
<math>
+ <mn>0</mn>
+ <mo>+</mo>
+ <mfrac displaystyle="true">
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ <mo>−</mo>
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ <mo>+</mo>
+ <mfrac linethickness="200%">
+ <mn>1</mn>
+ <mn>234</mn>
+ </mfrac>
+ <mo>−</mo>
+ <mrow>
+ <mo>(</mo>
+ <mfrac linethickness="0">
+ <mn>123</mn>
+ <mn>4</mn>
+ </mfrac>
+ <mo>)</mo>
+ </mrow>
+</math>
+
+
+ The <mfrac>
element sets
+ displaystyle
to false
,
+ or if it was already false
increments
+ scriptlevel
by 1, within its children.
+ It sets math-shift to
+ compact
within its second child.
+ To avoid visual confusion between the fraction bar and another
+ adjacent items (e.g. minus sign or another fraction's bar),
+ a default 1-pixel space is added around the element.
+ The user agent stylesheet
+ must contain the following rules:
+
mfrac {
+ padding-inline: 1px;
+}
+mfrac > * {
+ math-depth: auto-add;
+ math-style: compact;
+}
+mfrac > :nth-child(2) {
+ math-shift: compact;
+}
+
+ If the <mfrac>
element
+ has less or more than two in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called
+ numerator, the second in-flow child is called
+ denominator and the layout algorithm is explained below.
+
<mfrac>
element has two children
+ that are in-flow. Hence the CSS rules basically perform
+ scriptlevel
, displaystyle
+ and math-shift
+ changes for the numerator and
+ denominator.
+
+ If the fraction line thickness is nonzero, the
+ <mfrac>
+ element is laid out as shown on Figure 12.
+ The fraction bar must only be painted if the
+ visibility of
+ the <mfrac>
element is visible
.
+ In that case, the fraction bar must be painted with the
+ color
+ of the <mfrac>
element.
+
The min-content inline size + (respectively max-content inline size) + of content is the maximum between the + min-content inline size + (respectively max-content inline size) of the numerator's + margin box and the min-content inline size + (respectively max-content inline size) of the denominator's + margin box. +
++ If there is an inline stretch size constraint + or a block stretch size constraint then + the numerator is also laid out with the same stretch size + constraint, + otherwise it is laid out without any stretch + size constraint. The denominator is always laid out without + any stretch size constraint. +
++ The inline size of the math content + is the maximum between the inline size of the + numerator's margin box and the inline size of the + denominator's margin box. +
+NumeratorShift
is the maximum between:
compact
+ (respectively normal
).
+ compact
+ (respectively normal
) +
+ the ink line-descent of the numerator's margin box.
+ DenominatorShift
is the maximum between:
compact
+ (respectively normal
).
+ compact
+ (respectively normal
) +
+ the ink line-ascent of the denominator's margin box −
+ the AxisHeight.
+ + The line-ascent of the math content is the maximum between: +
+Numerator Shift
+
+ the line-ascent of the numerator's margin box.
+ Denominator Shift
+
+ the line-ascent of the denominator's margin box
+ + The line-descent of the math content is the maximum between: +
+Numerator Shift
+ + the line-descent of the numerator's margin box.
+ Denominator Shift
+ + the line-descent of the denominator's margin box.
+ + The inline offset of the numerator (respectively denominator) + is half the inline size of the math content − + half the inline size of + the numerator's margin box + (respectively denominator's margin box). +
+
+ The alphabetic baseline of the numerator (respectively denominator)
+ is shifted away from the alphabetic baseline by a distance of
+ NumeratorShift
(respectively
+ DenominatorShift
)
+ towards the line-over (respectively line-under).
+
+ The math content box is placed within the + content box so that their block-start edges + are aligned and the middles of these edges are at the same + position. +
++ The inline size of the fraction bar is the + inline size of the content box and its + inline-start edge is the aligned with the one the + content box. + The center of the fraction bar is shifted away from the alphabetic baseline of the math content box + by a distance of AxisHeight towards the line-over. + Its block size is the + fraction line thickness. +
+
+ If the fraction line thickness is zero,
+ the <mfrac>
element is instead laid out as
+ shown on Figure 13.
+
+ The min-content inline size, max-content inline size + and inline size of the math content are calculated the same + as in 3.3.2.1 Fraction with nonzero line thickness. +
++ If there is an inline stretch size constraint or + a block stretch size constraint then + the numerator is also laid out with the same stretch size + constraint + and otherwise it is laid out without any stretch + size constraint. The denominator is always laid out without + any stretch size constraint. +
+
+ If the math-style is compact
then
+ TopShift
and
+ BottomShift
are respectively
+ set to StackTopShiftUp and StackBottomShiftDown.
+ Otherwise math-style is normal
and
+ they are respectively set to StackTopDisplayStyleShiftUp
+ and StackBottomDisplayStyleShiftDown.
+
+ The Gap
is defined to be
+ (BottomShift
−
+ the ink line-ascent of the denominator's margin box) +
+ (TopShift
−
+ the ink line-descent of the numerator's margin box).
+ If math-style is compact
+ then GapMin
+ is StackGapMin,
+ otherwise math-style is normal
+ and it is StackDisplayStyleGapMin.
+ If Δ = GapMin
− Gap
is positive then
+ TopShift
and BottomShift
+ are respectively increased by Δ/2 and Δ − Δ/2.
+
+ The line-ascent of the math content is the maximum between: +
+TopShift
+
+ the line-ascent of the numerator's margin box.
+ BottomShift
+ + the line-ascent of the denominator's margin box.
+ + The line-descent of the math content is the maximum between: +
+TopShift
+ + the line-descent of the numerator's margin box.
+ BottomShift
+ + the line-descent of the denominator's margin box.
+ + The inline offsets of the numerator and denominator are + calculated the same as in + 3.3.2.1 Fraction with nonzero line thickness. +
+
+ The alphabetic baseline of the numerator (respectively denominator) is
+ shifted away from the alphabetic baseline by a distance of
+ TopShift
(respectively −
+ BottomShift
) towards the
+ line-over (respectively line-under).
+
+ The math content box is placed within the + content box so that their block-start edges + are aligned and the middles of these edges are at the same + position. +
++ The radical elements construct an expression with a + root symbol √ with a line over the content. + The msqrt element is + used for square roots, while the mroot element is + used to draw radicals with indices, e.g. a cube root. +
+
+ The <msqrt>
and <mroot>
+ elements accept the attributes described
+ in 2.1.3 Global Attributes.
+
The following example contains a square root
+ written with msqrt
and a cube root written
+ with mroot
.
+ Note that msqrt
has several children and the
+ square root applies to all of them.
+ mroot
has exactly two children: it is a
+ root of index the second child (the number 3), applied to the
+ first child (the square root).
+ Also note these elements only change the font-size within the
+ mroot
index, but it is scaled down more than
+ within the numerator and denumerator of the fraction.
+
<math>
+ <mroot>
+ <msqrt>
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ <mo>+</mo>
+ <mn>4</mn>
+ </msqrt>
+ <mn>3</mn>
+ </mroot>
+ <mo>+</mo>
+ <mn>0</mn>
+</math>
+
+
+ The <msqrt>
and <mroot>
+ elements sets math-shift to
+ compact
.
+ The <mroot>
element
+ increments scriptlevel
by 2, and sets displaystyle
to "false" in all
+ but its first child.
+ The user agent stylesheet
+ must contain the following rule in order to implement that behavior:
+
mroot > :not(:first-child) {
+ math-depth: add(2);
+ math-style: compact;
+}
+mroot, msqrt {
+ math-shift: compact;
+}
+
+ If the <msqrt>
or <mroot>
+ element do not have their computed
+ display
property equal to block math
+ or inline math
+ then they are laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ If the <mroot>
has less or more than two
+ in-flow children,
+ its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called
+ mroot base and
+ the second in-flow child is called
+ mroot index
+ and its layout algorithm is explained below.
+
<mroot>
element has two children
+ that are in-flow. Hence the CSS rules basically perform
+ scriptlevel
and displaystyle
changes for the index.
+
+ The <msqrt>
element
+ generates an anonymous <mrow> box
+ called the msqrt base.
+
+ The radical symbol must only be painted if the
+ visibility of
+ the <msqrt>
or <mroot>
+ element is visible
.
+ In that case, the radical symbol must be painted with the
+ color
+ of that element.
+
+ The radical glyph is the glyph obtained for the + character U+221A SQUARE ROOT. +
+
+ The radical gap is given by
+ RadicalVerticalGap
+ if the math-style is compact
and
+ RadicalDisplayStyleVerticalGap
+ if the math-style is normal
.
+
+ The radical target size for the stretchy radical glyph is + the sum of RadicalRuleThickness, + radical gap and the ink height of the base. +
++ 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. +
+
+ The <msqrt>
element is laid out as shown on
+ Figure 14.
+
+ The min-content inline size + (respectively max-content inline size) + of the math content is + the sum of the + preferred inline size of a glyph stretched along the + block axis + for the radical glyph + and of the + min-content inline size (respectively max-content inline size) + of the msqrt base's margin box. +
++ The inline size of the math content is the sum of the advance width + of the box metrics of the radical glyph and + of the inline size of the msqrt base's margin's box. +
++ The line-ascent of the math content is the maximum between: +
++ The line-descent of the math content is the maximum between: +
++ The inline size of the overbar is the inline size of the + msqrt base's margin's box. + The inline offsets of the msqrt base and overbar are also the same + and equal to the width of the + box metrics of the radical glyph. +
++ The alphabetic baseline of the msqrt base is aligned with the alphabetic baseline. + The block size of the overbar is + RadicalRuleThickness. Its vertical center is shifted away + from the alphabetic baseline by a distance towards the line-over + equal to the line-ascent of the math content, minus + the RadicalExtraAscender, + minus half the RadicalRuleThickness. +
++ Finally, the painting of the surd is performed: +
+
+ The <mroot>
element is laid out as shown on
+ Figure 15.
+ The mroot index is first ignored and the mroot base
+ and
+ radical glyph are laid out as
+ shown on figure Figure 14
+ using the same algorithm as in
+ 3.3.3.2 Square root
+ in order to produce a margin box B (represented in green).
+
+ The min-content inline size + (respectively max-content inline size) of the math content is the sum + of max(0, RadicalKernBeforeDegree), + the mroot index's + min-content inline size + (respectively max-content inline size) + of the mroot index's margin box, + max(−min-content inline size, RadicalKernAfterDegree) + (respectively max(−max-content inline size + of the mroot index's margin box, + RadicalKernAfterDegree)) + and of the + min-content inline size + (respectively max-content inline size) of B. +
+Using the same clamping, + AdjustedRadicalKernBeforeDegree and + AdjustedRadicalKernAfterDegree are respectively + defined as max(0, RadicalKernBeforeDegree) and + is max(−inline size of the index's margin box, + RadicalKernAfterDegree).
++ The inline size of the math content is the sum of + AdjustedRadicalKernBeforeDegree, + the inline size of the index's margin box, + AdjustedRadicalKernAfterDegree + and of the inline size of B. +
++ The line-ascent of the math content is the maximum between: +
+The line-descent of the math content is the maximum between:
++ The inline offset of the index is + AdjustedRadicalKernBeforeDegree. + The inline-offset of the + mroot base is the same + the + inline size of the index's margin box. +
++ The alphabetic baseline of B is aligned with the alphabetic baseline. + The alphabetic baseline of the index is shifted away + from the line-under edge by a distance of + RadicalDegreeBottomRaisePercent × + the block size of B + the line-descent of the + index's margin box. +
++ Historically, the + mstyle + element was introduced to make + style changes that affect the rendering of its contents. +
+
+ The <mstyle>
element accepts the attributes described in
+ 2.1.3 Global Attributes. Its layout algorithm is the
+ same as the mrow
element.
+
<mstyle>
is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use CSS for styling.
+ In the following example,
+ mstyle
is used to set the scriptlevel
+ and displaystyle.
+ Observe this is respectively affecting the
+ font-size and placement of subscripts of their
+ descendants. In MathML Core, one could just have used
+ mrow
elements instead.
+
<math>
+ <munder>
+ <mo movablelimits="true">*</mo>
+ <mi>A</mi>
+ </munder>
+ <mstyle scriptlevel="1">
+ <mstyle displaystyle="true">
+ <munder>
+ <mo movablelimits="true">*</mo>
+ <mi>B</mi>
+ </munder>
+ <munder>
+ <mo movablelimits="true">*</mo>
+ <mi>C</mi>
+ </munder>
+ </mstyle>
+ <munder>
+ <mo movablelimits="true">*</mo>
+ <mi>D</mi>
+ </munder>
+ </mstyle>
+</math>
+
+ + The + merror + element displays its contents as an + ”error message”. The intent of this element is to provide a standard way + for programs that generate MathML from other input to report syntax errors + in their input. +
+In the following example,
+ merror
is used to indicate a parsing error
+ for some LaTeX-like input:
+
<math>
+ <mfrac>
+ <merror>
+ <mtext>Syntax error: \frac{1}</mtext>
+ </merror>
+ <mn>3</mn>
+ </mfrac>
+</math>
+
+
+ The <merror>
element accepts the attributes described in
+ 2.1.3 Global Attributes. Its layout algorithm is the
+ same as the mrow
element.
+ The user agent stylesheet
+ must contain the following rule in order to visually highlight the error
+ message:
+
merror {
+ border: 1px solid red;
+ background-color: lightYellow;
+}
+
+ The
+ mpadded
+ element renders the same as its in-flow child content, but with the
+ size and relative positioning point of its
+ content modified according to <mpadded>
’s attributes.
+
+ The <mpadded>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following
+ attributes:
+
The + width, + height, + depth, + lspace + and + voffset + if present, must + have a value that is a valid <length-percentage>. +
+In the following example, mpadded
is used to
+ tweak spacing around a fraction
+ (a blue background is used to visualize it).
+ Without attributes, it behaves like an mrow
but
+ the attributes allow to specify the size of the box
+ (width, height, depth) and position of the fraction within that
+ box (lspace and voffset).
+
<math>
+ <mrow>
+ <mn>1</mn>
+ <mpadded style="background: lightblue;">
+ <mfrac>
+ <mn>23456</mn>
+ <mn>78</mn>
+ </mfrac>
+ </mpadded>
+ <mn>9</mn>
+ </mrow>
+ <mo>+</mo>
+ <mrow>
+ <mn>1</mn>
+ <mpadded lspace="2em" voffset="-1em" height="1em" depth="3em" width="7em"
+ style="background: lightblue;">
+ <mfrac>
+ <mn>23456</mn>
+ <mn>78</mn>
+ </mfrac>
+ </mpadded>
+ <mn>9</mn>
+ </mrow>
+</math>
+
+
+ The mpadded
element
+ generates an anonymous <mrow> box called the
+ mpadded inner box with parameters called
+ inner inline size, inner line-ascent and inner line-descent.
+
+ The requested <mpadded>
+ parameters are determined as follows:
+
width
+ attribute is present, valid and not a percentage then
+ that attribute is used as a
+ presentational hint
+ setting the element's
+ width
+ property to the corresponding value.
+ height
+ attribute is absent, invalid or a percentage then the requested
+ height is the inner line-ascent.
+ Otherwise the requested height is the resolved
+ value of the height
attribute, clamping
+ negative values to 0
.
+ depth
+ attribute is absent, invalid or a percentage then the requested
+ depth is the inner line-ascent.
+ Otherwise the requested depth is the resolved
+ value of the depth
attribute, clamping
+ negative values to 0
.
+ lspace
+ attribute is absent, invalid or a percentage then the requested
+ lspace is 0. Otherwise the requested lspace is the resolved
+ value of the lspace
attribute, clamping
+ negative values to 0
.
+ voffset
+ attribute is absent, invalid or a percentage then the requested
+ voffset is 0. Otherwise the requested voffset is the resolved
+ value of the voffset
attribute.
+ voffset
values are not clamped to
+ 0
.
+
+ If the <mpadded>
element does not have its
+ computed
+ display
property equal to block math
+ or inline math
+ then it is laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, it is laid out as shown on
+ Figure 16.
+
+ The min-content inline size (respectively max-content inline size) + of the math content + is the requested width calculated in + 3.3.6.1 Inner box and requested parameters + but using the min-content inline size (respectively max-content inline size) of the + mpadded inner box instead of the "inner inline size". +
++ The inline size of the math content + is the requested width calculated in + 3.3.6.1 Inner box and requested parameters. +
++ The line-ascent of the math content is the requested height. + The line-descent of the math content is the requested depth. +
++ The mpadded inner box is placed so that its alphabetic baseline is + shifted away from the alphabetic baseline by the requested voffset + towards the line-over. +
++ Historically, the + mphantom + element was introduced to render + its content invisibly, but with the same metrics size and other dimensions, + including alphabetic baseline position that its contents would have if they were + rendered normally. +
+In the following example,
+ mphantom
is used to ensure alignment of
+ corresponding parts of the numerator and denominator of a
+ fraction:
+
<math>
+ <mfrac>
+ <mrow>
+ <mi>x</mi>
+ <mo>+</mo>
+ <mi>y</mi>
+ <mo>+</mo>
+ <mi>z</mi>
+ </mrow>
+ <mrow>
+ <mi>x</mi>
+ <mphantom>
+ <mo form="infix">+</mo>
+ <mi>y</mi>
+ </mphantom>
+ <mo>+</mo>
+ <mi>z</mi>
+ </mrow>
+ </mfrac>
+</math>
+
+
+ The <mphantom>
element accepts the attributes described
+ in 2.1.3 Global Attributes. Its layout algorithm is
+ the same as the mrow
element.
+ The user agent stylesheet
+ must contain the following rule in order to hide the content:
+
mphantom {
+ visibility: hidden;
+}
+ <mphantom>
is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use CSS for styling.
+ + The elements described in this section position one or more scripts + around a base. Attaching various kinds of scripts and embellishments + to symbols is a very common notational device in mathematics. For + purely visual layout, a single general-purpose element could suffice + for positioning scripts and embellishments in any of the traditional + script locations around a given base. However, in order to capture + the abstract structure of common notation better, MathML provides + several more specialized scripting elements. +
++ In addition to sub-/superscript elements, MathML has overscript and + underscript elements that place scripts above and below the base. + These elements can be used to place limits on large operators, or for + placing accents and lines above or below the base. +
++ The msub, + msup and + msubsup elements are used to attach + subscript and superscript to a MathML expression. + They accept the attributes described in + 2.1.3 Global Attributes. +
+The following example shows basic use of subscripts and + superscripts. The font-size is automatically scaled down + within the scripts. +
+<math>
+ <msub>
+ <mn>1</mn>
+ <mn>2</mn>
+ </msub>
+ <mo>+</mo>
+ <msup>
+ <mn>3</mn>
+ <mn>4</mn>
+ </msup>
+ <mo>+</mo>
+ <msubsup>
+ <mn>5</mn>
+ <mn>6</mn>
+ <mn>7</mn>
+ </msubsup>
+</math>
+
+
+ If the
+ <msub>
,
+ <msup>
or
+ <msubsup>
elements do not have their
+ computed
+ display
property equal to block math
+ or inline math
+ then they are laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ If the <msub>
element
+ has less or more than two in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ msub base, the second in-flow child is called the
+ msub subscript and the layout algorithm is explained
+ in 3.4.1.2 Base with subscript.
+
+ If the <msup>
element
+ has less or more than two in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ msup base, the second in-flow child is called the
+ msup superscript and the layout algorithm is explained
+ in 3.4.1.3 Base with superscript.
+
+ If the <msubsup>
element
+ has less or more than three in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ msubsup base, the second in-flow child
+ is called the msubsup subscript,
+ its third in-flow child is called
+ the msubsup superscript and the layout algorithm is explained
+ in 3.4.1.4 Base with subscript and superscript.
+
+ The <msub>
element is laid out as shown on
+ Figure 17.
+ LargeOpItalicCorrection
+ is the italic correction of the msub base
+ if it is an embellished operator with
+ the largeop
property and 0 otherwise.
+
+ The
+ min-content inline size (respectively max-content inline size) of the math content is the
+ min-content inline size (respectively max-content inline size) of the msub base's margin box −
+ LargeOpItalicCorrection
+
+ min-content inline size (respectively max-content inline size) of
+ the msub subscript's margin box + SpaceAfterScript.
+
+ If there is an + inline stretch size constraint + or a block stretch size constraint + then the msub base is also laid out with the same stretch size + constraint and otherwise it is laid out without any stretch + size constraint. The scripts are always laid out without + any stretch size constraint. +
+
+ The inline size of the math content
+ is the inline size of the msub base's margin box −
+ LargeOpItalicCorrection
+
+ the inline size of
+ the msub subscript's margin box + SpaceAfterScript.
+
+ SubShift
is the maximum between:
+
+ The line-ascent of the math content is the maximum between: +
+SubShift
.+ The line-descent of the math content is the maximum between: +
+SubShift
.
+ The inline offset of the msub base is 0 and the inline offset of the
+ msub subscript is the inline size of the msub base's margin box −
+ LargeOpItalicCorrection
.
+
+ The msub base is placed so that its alphabetic baseline
+ matches the alphabetic baseline. The msub subscript is placed so that its alphabetic baseline
+ is shifted away from the alphabetic baseline by SubShift
+ towards the line-under.
+
+ The <msup>
element is laid out as shown on
+ Figure 18.
+ ItalicCorrection
+ is the italic correction of the msup base
+ if it is not an embellished operator with
+ the largeop
property and 0 otherwise.
+
+ The
+ min-content inline size (respectively max-content inline size)
+ of the math content
+ is the
+ min-content inline size (respectively max-content inline size) of
+ the msup base's margin box +
+ ItalicCorrection
+
+ the min-content inline size (respectively max-content inline size) of
+ the msup superscript's margin box + SpaceAfterScript.
+
+ If there is an + inline stretch size constraint + or a block stretch size constraint + then the msup base is also laid out with the same stretch size + constraint and otherwise it is laid out without any stretch + size constraint. The scripts are always laid out without + any stretch size constraint. +
+
+ The inline size of the math content
+ is the inline size of the msup base's margin box +
+ ItalicCorrection
+
+ the inline size of
+ the msup superscript's margin box + SpaceAfterScript.
+
+ SuperShift
is the maximum between:
+
compact
, or
+ SuperscriptShiftUp otherwise.+ The line-ascent of the math content is the maximum between: +
+SuperShift
.+ The line-descent of the math content is the maximum between: +
+SuperShift
.
+ The inline offset of the msup base is 0 and the inline offset of
+ msup superscript is the inline size of the msup base's margin box +
+ ItalicCorrection
.
+
+ The msup base is placed so that its alphabetic baseline
+ matches the alphabetic baseline. The msup superscript is placed so that its
+ alphabetic baseline
+ is shifted away from the alphabetic baseline by SuperShift
+ towards the line-over.
+
+ The <msubsup>
element is laid out as shown on
+ Figure 18.
+ LargeOpItalicCorrection
and SubShift
+ are set as in 3.4.1.2 Base with subscript.
+ ItalicCorrection
and SuperShift
+ are set as in 3.4.1.3 Base with superscript.
+
+ The + min-content inline size (respectively max-content inline size and + inline size) of the math content is the maximum between the + min-content inline size (respectively max-content inline size and + inline size) of the math content calculated in + 3.4.1.2 Base with subscript and + 3.4.1.3 Base with superscript. +
++ If there is an + inline stretch size constraint + or a block stretch size constraint + then the msubsup base is also laid out with the same stretch size + constraint and otherwise it is laid out without any stretch + size constraint. The scripts are always laid out without + any stretch size constraint. +
++ If there is an + inline stretch size constraint + or a block stretch size constraint + then the msubsup base is also laid out with the same stretch size + constraint and otherwise it is laid out without any stretch + size constraint. The scripts are always laid out without + any stretch size constraint. +
+
+ SubSuperGap
is the gap between the two scripts
+ along the block axis and is defined by
+ (SubShift
− the ink line-ascent of the msubsup subscript's
+ margin box) +
+ (SuperShift
− the ink line-descent of the
+ msubsup superscript's margin box).
+ If SubSuperGap
is not at least
+ SubSuperscriptGapMin then the following steps are
+ performed to ensure that the condition holds:
+
SuperShift
− the ink line-descent of the
+ msubsup superscript's margin box).
+ If Δ > 0 then set Δ to the minimum between Δ set
+ SubSuperscriptGapMin − SubSuperGap
and
+ increase SuperShift
(and so
+ SubSuperGap
too) by Δ.
+ SubSuperGap
.
+ If Δ > 0 then
+ increase SubscriptShift
(and so
+ SubSuperGap
too) by Δ.
+
+ The ink line-ascent (respectively line-ascent, ink line-descent,
+ line-descent) of the math content
+ is set to the maximum
+ of the
+ ink line-ascent (respectively line-ascent, ink line-descent,
+ line-descent) of the math content
+ calculated in
+ 3.4.1.2 Base with subscript and
+ 3.4.1.3 Base with superscript
+ but using the adjusted values SubShift
and
+ SuperShift
above.
+
+ The inline offset and block offset of the msubsup base and scripts are + performed the + same as described in + 3.4.1.2 Base with subscript and + 3.4.1.3 Base with superscript. +
+
+ Even when the msubsup subscript (respectively msubsup superscript) is an empty
+ box, <msubsup>
+ does not generally render the same as
+ 3.4.1.3 Base with superscript
+ (respectively 3.4.1.2 Base with subscript)
+ because of the additional constraint on
+ SubSuperGap
.
+ Moreover, positioning the empty msubsup subscript
+ (respectively msubsup superscript)
+ may also change the total size.
+
+ In order to keep the algorithm simple, no attempt is made to + handle empty scripts in a special way. +
++ The munder, + mover and + munderover elements are used to + attach + accents or limits placed under or over a MathML expression. +
+
+ The <munderover>
element accepts the attribute
+ described in 2.1.3 Global Attributes as well as the
+ following attributes:
+
accent
accentunder
+ Similarly, the <mover>
element
+ (respectively <munder>
element) accepts the
+ attribute described in 2.1.3 Global Attributes
+ as well as the accent
+ attribute (respectively the
+ accentunder
attribute).
+
+ accent,
+ accentunder
+ attributes, if present, must have values that are booleans.
+ If these attributes are absent or invalid, they are treated as
+ equal to false
.
+ User agents must implement them as described in
+ 3.4.4 Displaystyle, scriptlevel and math-shift in scripts.
+
The following example shows basic use of under- and overscripts. + The font-size is automatically scaled down within the scripts, + unless they are meant to be accents. +
+<math>
+ <munder>
+ <mn>1</mn>
+ <mn>2</mn>
+ </munder>
+ <mo>+</mo>
+ <mover>
+ <mn>3</mn>
+ <mn>4</mn>
+ </mover>
+ <mo>+</mo>
+ <munderover>
+ <mn>5</mn>
+ <mn>6</mn>
+ <mn>7</mn>
+ </munderover>
+ <mo>+</mo>
+ <munderover accent="true">
+ <mn>8</mn>
+ <mn>9</mn>
+ <mn>10</mn>
+ </munderover>
+ <mo>+</mo>
+ <munderover accentunder="true">
+ <mn>11</mn>
+ <mn>12</mn>
+ <mn>13</mn>
+ </munderover>
+</math>
+
+
+ If the
+ <munder>
,
+ <mover>
or
+ <munderover>
elements do not have their
+ computed
+ display
property equal to block math
+ or inline math
+ then they are laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ If the <munder>
element
+ has less or more than two in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ munder base and the second in-flow child is called the
+ munder underscript.
+
+ If the <mover>
element
+ has less or more than two in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ mover base and the second in-flow child is called the
+ mover overscript.
+
+ If the <munderover>
element
+ has less or more than three in-flow children, its layout algorithm
+ is the same as the mrow
element.
+ Otherwise, the first in-flow child is called the
+ munderover base, the second in-flow child
+ is called the munderover underscript
+ and its third in-flow child is called
+ the munderover overscript.
+
+ If the
+ <munder>
, <mover>
or
+ <munderover>
elements have a computed
+ math-style property equal to compact
+ and their base is an embellished operator with the
+ movablelimits
property, then
+ their layout algorithms are respectively
+ the same as the ones described for
+ <msub>
, <msup>
and
+ <msubsup>
in
+ 3.4.1.2 Base with subscript,
+ 3.4.1.3 Base with superscript and
+ 3.4.1.4 Base with subscript and superscript.
+
+ Otherwise, the
+ <munder>
, <mover>
and
+ <munderover>
layout algorithms are respectively
+ described in
+ 3.4.2.3 Base with underscript,
+ 3.4.2.4 Base with overscript and
+ 3.4.2.5 Base with underscript and overscript.
+
+ The algorithm for stretching operators along the inline + axis + is as follows. +
+LToStretch
containing
+ embellished operators with
+ a stretchy
property and inline stretch axis;
+ and a second list LNotToStretch
.
+ LNotToStretch
.
+ If LToStretch
is empty then stop.
+ If LNotToStretch
is empty, perform
+ layout with inline stretch size constraint 0 for
+ all the items of LToStretch
.
+ T
to
+ the maximum inline size of the
+ margin boxes of child boxes that have been laid out in the
+ previous step.
+ LToStretch
+ with inline stretch size constraint T
.
+
+ The <munder>
element is laid out as shown on
+ Figure 20.
+ LargeOpItalicCorrection
+ is the italic correction of the munder base
+ if it is an embellished operator with
+ the largeop
property and 0 otherwise.
+
+ The min-content inline size (respectively max-content inline size) + of the math content are + calculated like the inline size of the math content below + but replacing the + inline sizes of the munder base's margin box and munder underscript's margin box + with the + min-content inline size (respectively max-content inline size) + of the munder base's margin box and munder underscript's margin box. +
++ The in-flow children are laid out + using the algorithm for stretching operators along the inline axis. +
++ The inline size of the math content is + calculated by determining the absolute difference between: +
+LargeOpItalicCorrection
.LargeOpItalicCorrection
.
+ If m is the minimum calculated in the second item above then the
+ inline offset
+ of the munder base is −m − half the inline size of the base's margin box.
+ The inline offset of the munder underscript is
+ −m − half the inline size of the munder underscript's margin box −
+ half LargeOpItalicCorrection
.
+
+ Parameters
+ UnderShift
and UnderExtraDescender
+ are determined by considering three cases in the following order:
+
+ The munder base is an
+ embellished operator with the
+ largeop
property.
+ UnderShift
is the maximum of
+
+ UnderExtraDescender
is 0.
+
+ The munder base is an
+ embellished operator with the
+ stretchy
property
+ and stretch axis inline.
+ UnderShift
is the maximum of:
+
UnderExtraDescender
is 0.
+ UnderShift
is equal to UnderbarVerticalGap
+ if the accentunder
attribute is not an
+ ASCII case-insensitive match to true
+ and to zero otherwise.
+ UnderExtraAscender
is
+ UnderbarExtraDescender.
+ + The line-ascent of the math content is the maximum between: +
+UnderShift
.+ The line-descent of the math content is the maximum between: +
+UnderShift
+ UnderExtraAscender
.
+ The alphabetic baseline of the munder base is aligned with the alphabetic baseline.
+ The alphabetic baseline of the munder underscript is shifted away from the alphabetic baseline
+ and towards the line-under by a distance equal to
+ the ink line-descent of the munder base's margin box
+ + UnderShift
.
+
+ The math content box is placed within the + content box so that their block-start edges + are aligned and the middles of these edges are at the same + position. +
+
+ The <mover>
element is laid out as shown on
+ Figure 21.
+ LargeOpItalicCorrection
+ is the italic correction of the mover base
+ if it is an embellished operator with
+ the largeop
property and 0 otherwise.
+
+ The min-content inline size (respectively max-content inline size) + of the math content are + calculated like the inline size of the math content + below but replacing the + inline sizes of the mover base's margin box and mover overscript's margin box with + the min-content inline size (respectively max-content inline size) of the mover base's margin box and mover overscript's margin box. +
++ The in-flow children are laid out + using the algorithm for stretching operators along the inline axis. +
+
+ The TopAccentAttachment
is the
+ top accent attachment of the mover overscript or
+ half the inline size of the mover overscript's margin box
+ if it is undefined.
+
+ The inline size of the math content is + calculated by + applying the algorithm for stretching operators along the inline axis for + layout and determining the absolute difference between: +
+TopAccentAttachment
+
+ half LargeOpItalicCorrection
.TopAccentAttachment
+
+ half LargeOpItalicCorrection
.
+ If m is the minimum calculated in the second item above then the
+ inline offset
+ of the mover base is −m − half the inline size of the base's margin.
+ The inline offset of the mover overscript is
+ −m − half the inline size of the mover overscript's margin box +
+ half LargeOpItalicCorrection
.
+
+ Parameters
+ OverShift
and OverExtraDescender
+ are determined by considering three cases in the following order:
+
+ The mover base is an
+ embellished operator with the
+ largeop
property.
+ OverShift
is the maximum of
+
+ OverExtraAscender
is 0.
+
+ The mover base is an
+ embellished operator with the
+ stretchy
property and
+ stretch axis inline.
+ OverShift
is the maximum of:
+
OverExtraDescender
is 0.
+
+ Otherwise, OverShift
is equal to
accent
attribute is not an
+ ASCII case-insensitive match to true
.
+ OverExtraAscender
is OverbarExtraAscender.
+
+ The line-ascent of the math content is the maximum between: +
+OverShift
+ OverExtraAscender
.+ The line-descent of the math content is the maximum between: +
+OverShift
.
+ The alphabetic baseline of the mover base is aligned with the alphabetic baseline.
+ The alphabetic baseline of the mover overscript is shifted away from the alphabetic baseline
+ and towards the line-over by a distance equal to
+ the ink line-ascent of the base + OverShift
.
+
+ The math content box is placed within the + content box so that their block-start edges + are aligned and the middles of these edges are at the same + position. +
+
+ The general layout of <munderover>
is shown on
+ Figure 22. The
+ LargeOpItalicCorrection
,
+ UnderShift
,
+ UnderExtraDescender
,
+ OverShift
,
+ OverExtraDescender
parameters
+ are calculated the same as in
+ 3.4.2.3 Base with underscript and
+ 3.4.2.4 Base with overscript.
+
+ The min-content inline size, max-content inline size + and inline size of the math content + are calculated as an absolute difference + between a maximum inline offset and minimum inline offset. + These extrema are calculated by taking the extremum value + of the corresponding extrema calculated in + 3.4.2.3 Base with underscript and + 3.4.2.4 Base with overscript. + The inline offsets of the munderover base, + munderover underscript and + munderover overscript + are calculated as in these sections but using + the new minimum m (minimum of the corresponding minima). +
++ Like in these sections, the in-flow children are laid out + using the algorithm for stretching operators along the inline axis. +
++ The line-ascent and line-descent of the math content + are also calculated by taking the extremum value + of the extrema calculated in + 3.4.2.3 Base with underscript and + 3.4.2.4 Base with overscript. +
++ Finally, the alphabetic baselines of the + munderover base, + munderover underscript and + munderover overscript + are calculated as in sections + 3.4.2.3 Base with underscript and + 3.4.2.4 Base with overscript. +
++ The math content box is placed within the + content box so that their block-start edges + are aligned and the middles of these edges are at the same + position. +
++ When the underscript (respectively overscript) is an empty + box, the base and overscript (respectively underscript) are laid + out similarly to + 3.4.2.4 Base with overscript + (respectively 3.4.2.3 Base with underscript) + but the position of the empty underscript (respectively + overscript) may add extra space. + In order to keep the algorithm simple, no attempt is made to + handle empty scripts in a special way. +
++ Presubscripts and tensor notations are represented by + the mmultiscripts element. + The mprescripts element is + used as a separator between the postscripts and prescripts. + These two elements accept the attributes described in + 2.1.3 Global Attributes. +
+
+ The following example shows basic use of prescripts
+ and postscripts, involving a mprescripts
.
+ Empty mrow
elements are used at positions where
+ no scripts are rendered.
+ The font-size is automatically scaled down within the scripts.
+
<math>
+ <mmultiscripts>
+ <mn>1</mn>
+ <mn>2</mn>
+ <mn>3</mn>
+ <mrow></mrow>
+ <mn>5</mn>
+ <mprescripts/>
+ <mn>6</mn>
+ <mrow></mrow>
+ <mn>8</mn>
+ <mn>9</mn>
+ </mmultiscripts>
+</math>
+
+
+ If the
+ <mmultiscripts>
or
+ <mprescripts>
+ elements do not have their
+ computed
+ display
property equal to block math
+ or inline math
+ then they are laid out according to the CSS specification where
+ the corresponding value is described.
+ Otherwise, the layout below is performed.
+
+ The
+ <mprescripts>
+ element is laid out as an mrow
+ element.
+
+ A valid <mmultiscripts>
element contains the
+ following in-flow children:
+
mprescripts
element.
+ mprescripts
element.
+ These scripts form a (possibly empty) list
+ subscript, superscript, subscript, superscript,
+ subscript, superscript, etc.
+ Each consecutive couple of children subscript, superscript
+ is called a
+ subscript/superscript pair.
+ mprescripts
element and
+ an even number of in-flow children called
+ mmultiscripts prescripts, none of them being a
+ mprescripts
element.
+ These scripts form a (possibly empty) list of
+ subscript/superscript pair.
+
+ If an <mmultiscripts>
element is not valid then
+ it is laid out the same as the
+ mrow
element.
+ Otherwise the layout algorithm is performed as in
+ 3.4.3.1 Base with prescripts and postscripts.
+
+ The <mmultiscripts>
element is laid out as
+ shown on Figure 23.
+ For each subscript/superscript pair of
+ mmultiscripts postscripts,
+ the ItalicCorrection
+ LargeOpItalicCorrection
are defined as
+ in 3.4.1.2 Base with subscript
+ and 3.4.1.3 Base with superscript.
+
+ The + min-content inline size (respectively max-content inline size) + of the math content is + calculated the same as the inline size of the math content + below, but replacing + "inline size" with "min-content inline size" + (respectively "max-content inline size") for the + mmultiscripts base's + margin box and scripts' margin boxes. +
++ If there is an inline stretch size constraint or a + block stretch size constraint + the mmultiscripts base + is also laid out with the same stretch size constraint. + Otherwise it is laid out without any stretch + size constraint. The other elements are always laid out without + any stretch size constraint. +
++ The inline size of the math content + is calculated with the following algorithm: +
+inline-offset
to 0.
+ For each subscript/superscript pair of
+ mmultiscripts prescripts, increment
+ inline-offset
by SpaceAfterScript + the
+ maximum of
+
inline-offset
by the inline size of the
+ mmultiscripts base's margin box and
+ set inline-size
to inline-offset
.
+
+ For each subscript/superscript pair of
+ mmultiscripts postscripts, modify
+ inline-size
to be at least:
+
LargeOpItalicCorrection
.
+ ItalicCorrection
.
+ Increment inline-offset
to the maximum of:
+ Increment inline-offset
by
+ SpaceAfterScript.
+
inline-size
.
+ SubShift
(respectively SuperShift
)
+ is calculated by taking the maximum of all subshifts
+ (respectively supershifts) of each
+ subscript/superscript pair as described in
+ 3.4.1.4 Base with subscript and superscript.
+
+ The line-ascent of the math content is calculated
+ by taking the maximum of all the line-ascent
+ of each subscript/superscript pair as described in
+ 3.4.1.4 Base with subscript and superscript
+ but using the SubShift
and
+ SuperShift
values calculated above.
+
+ The line-descent of the math content is calculated
+ by taking the maximum of all the line-descent
+ of each subscript/superscript pair as described in
+ 3.4.1.4 Base with subscript and superscript
+ but using the SubShift
and
+ SuperShift
values calculated above.
+
+ Finally, the placement of the in-flow children is performed using + the + following algorithm: +
+inline-offset
to 0.For each subscript/superscript pair of + mmultiscripts prescripts:
+inline-offset
by
+ SpaceAfterScript.
+ pair-inline-size
to the maximum of
+ inline-offset
+ pair-inline-size
+ − the inline size of the subscript's margin box.
+ inline-offset
+ pair-inline-size
+ − the inline size of the superscript's margin box.
+ SubShift
(respectively SuperShift
)
+ towards the line-under (respectively line-over).
+ inline-offset
by
+ pair-inline-size
.
+ <mprescripts>
boxes
+ at inline offsets
+ inline-offset
and with their alphabetic baselines
+ aligned with the alphabetic baseline.
+ + For each subscript/superscript pair of + mmultiscripts postscripts: +
+pair-inline-size
to the maximum of
+ inline-offset
+ − LargeOpItalicCorrection
.
+ inline-offset
+ + ItalicCorrection
.
+ SubShift
(respectively SuperShift
)
+ towards the line-under (respectively line-over).
+ inline-offset
by
+ pair-inline-size
.
+ inline-offset
by
+ SpaceAfterScript.
+
+ An <mmultiscripts>
with only one
+ subscript/superscript pair of
+ mmultiscripts postscripts is laid out the same as a
+ <msubsup>
with the same in-flow children.
+ However, as
+ noticed for
+ <msubsup>
,
+ if additionally the subscript (respectively superscript) is an
+ empty box then it is not necessarily laid out the same as an
+ <msub>
+ (respectively <msup>
) element.
+ In order to keep the algorithm simple, no attempt is made to
+ handle empty scripts in a special
+ way.
+
+ For all scripted elements, the rule of thumb is to set
+ displaystyle
to false
and
+ to increment scriptlevel
in all child
+ elements but the first one.
+ However, an mover
(respectively
+ munderover
)
+ element with an accent
+ attribute that is an
+ ASCII case-insensitive
+ match to true
does not increment scriptlevel within
+ its second child (respectively third child). Similarly,
+ mover
and
+ munderover
elements
+ with an accentunder
+ attribute that is an
+ ASCII case-insensitive
+ match to true
do not increment scriptlevel within
+ their second child.
+
<mmultiscripts>
sets
+ math-shift
to
+ compact
on its children at even position if they are
+ before an mprescripts
, and on those at odd position
+ if they are after
+ an mprescripts
.
+ The <msub>
and <msubsup>
+ elements set math-shift
to
+ compact
on their second child.
+ mover
and
+ munderover
+ elements with an accent
+ attribute that is an
+ ASCII case-insensitive
+ match to true
also set math-shift
to
+ compact
within their first child.
+
+ The + A. User Agent Stylesheet must contain the following + style in order to implement this behavior: +
+msub > :not(:first-child),
+msup > :not(:first-child),
+msubsup > :not(:first-child),
+mmultiscripts > :not(:first-child),
+munder > :not(:first-child),
+mover > :not(:first-child),
+munderover > :not(:first-child) {
+ math-depth: add(1);
+ math-style: compact;
+}
+munder[accentunder="true" i] > :nth-child(2),
+mover[accent="true" i] > :nth-child(2),
+munderover[accentunder="true" i] > :nth-child(2),
+munderover[accent="true" i] > :nth-child(3) {
+ font-size: inherit;
+}
+msub > :nth-child(2),
+msubsup > :nth-child(2),
+mmultiscripts > :nth-child(even),
+mmultiscripts > mprescripts ~ :nth-child(odd),
+mover[accent="true" i] > :first-child,
+munderover[accent="true" i] > :first-child {
+ math-shift: compact;
+}
+mmultiscripts > mprescripts ~ :nth-child(even) {
+ math-shift: inherit;
+}
+ <mprescripts>
is empty.
+ Hence the CSS rules essentially perform automatic displaystyle
and
+ scriptlevel
changes for the scripts; and
+ math-shift
changes for
+ subscripts and sometimes the base.
+
+ Matrices, arrays and other table-like mathematical notation are marked up
+ using
+ mtable
+ mtr
+ mtd
+ elements. These elements are similar to the
+ table
,
+ tr
+ and
+ td
+ elements of [HTML].
+
+ The following example shows how tabular layout allows to write a + matrix. Note that it is vertically centered with the fraction + bar and the middle of the equal sign. +
+<math>
+ <mfrac>
+ <mi>A</mi>
+ <mn>2</mn>
+ </mfrac>
+ <mo>=</mo>
+ <mrow>
+ <mo>(</mo>
+ <mtable>
+ <mtr>
+ <mtd><mn>1</mn></mtd>
+ <mtd><mn>2</mn></mtd>
+ <mtd><mn>3</mn></mtd>
+ </mtr>
+ <mtr>
+ <mtd><mn>4</mn></mtd>
+ <mtd><mn>5</mn></mtd>
+ <mtd><mn>6</mn></mtd>
+ </mtr>
+ <mtr>
+ <mtd><mn>7</mn></mtd>
+ <mtd><mn>8</mn></mtd>
+ <mtd><mn>9</mn></mtd>
+ </mtr>
+ </mtable>
+ <mo>)</mo>
+ </mrow>
+</math>
+
+ The mtable is laid out as an
+ inline-table
and sets
+ displaystyle
to false
. The
+ user agent stylesheet must contain
+ the following rules in order to implement these properties:
+
mtable {
+ display: inline-table;
+ math-style: compact;
+}
+
+ The mtable
element is as a CSS
+ table
+ and the
+ min-content inline size, max-content inline size,
+ inline size, block size,
+ first baseline set and last baseline set
+ sets are determined
+ accordingly.
+ The center of the table is aligned with the math axis.
+
+ The <mtable>
accepts the attributes described
+ in 2.1.3 Global Attributes.
+
+ The mtr is laid out as
+ table-row
. The
+ user agent stylesheet must contain
+ the following rules in order to implement that behavior:
+
mtr {
+ display: table-row;
+}
+
+ The <mtr>
accepts the attributes described
+ in 2.1.3 Global Attributes.
+
+ The mtd is laid out as
+ a table-cell
with content centered in the cell and
+ a default padding. The
+ user agent stylesheet must contain
+ the following rules:
+
mtd {
+ display: table-cell;
+ /* Centering inside table cells should rely on box alignment properties.
+ See https://github.com/w3c/mathml-core/issues/156 */
+ text-align: center;
+ padding: 0.5ex 0.4em;
+}
+
+ The <mtd>
accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following attributes:
+
columnspan
rowspan
+ The columnspan
(respectively
+ rowspan
) attribute has the same
+ syntax and semantics as the
+ colspan
+ (respectively
+
)
+ attribute on the rowspan
<td>
element from [HTML].
+ In particular, the parsing of these attributes is handled as
+ described in the
+ algorithm for processing rows, always reading "colspan
" as
+ "columnspan
".
+
columnspan
and is preserved for backward
+ compatibility reasons.
+
+ The <mtd>
element
+ generates an anonymous <mrow> box.
+
+ Historically, the + maction + element provides a mechanism + for binding actions to expressions. +
+
+ The <maction>
element accepts the attributes described
+ in 2.1.3 Global Attributes as well as the following
+ attributes:
+
actiontype
selection
+ This specification does not define any observable behavior + that is specific to the actiontype and selection + attributes. +
++ The following example shows the "toggle" action type from + [MathML3] + where the renderer alternately displays the selected subexpression, + starting from "one third" and cycling through them when there is a + click on the selected subexpression ("one quarter", "one half", + "one third", etc). This is not part of MathML Core but can be + implemented using JavaScript and CSS polyfills. The default behavior + is just to render the first child. +
+<math>
+ <maction actiontype="toggle" selection="2">
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ <mfrac>
+ <mn>1</mn>
+ <mn>3</mn>
+ </mfrac>
+ <mfrac>
+ <mn>1</mn>
+ <mn>4</mn>
+ </mfrac>
+ </maction>
+</math>
+
+
+ The layout algorithm of the <maction>
element
+ is the same as the <mrow>
element.
+ The user agent stylesheet
+ must contain the following rules in order to hide all but
+ its first child element,
+ which is the default behavior for the legacy actiontype
+ values:
+
maction > :not(:first-child) {
+ display: none;
+}
+ <maction>
is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use other HTML, CSS and JavaScript mechanisms to implement custom actions. They may
+ rely on maction attributes defined in [MathML3].
+
+ The
+ semantics
+ element is the container element that associates
+ annotations with a MathML expression. Typically, the
+ <semantics>
element has as its first child element
+ a MathML expression to be annotated while subsequent child elements
+ represent
+ text annotations within an annotation
+ element, or more complex markup annotations within
+ an annotation-xml element.
+
+ The following example shows how the fraction "one half" can be + annotated with a textual annotation (LaTeX) or an XML annotation + (content MathML), which are not intended to be rendered + by the user agent. This fraction is also annotated with equivalent + SVG and HTML markup. +
+<math>
+ <semantics>
+ <mfrac>
+ <mn>1</mn>
+ <mn>2</mn>
+ </mfrac>
+ <annotation encoding="application/x-tex">\frac{1}{2}</annotation>
+ <annotation-xml encoding="application/mathml-content+xml">
+ <apply>
+ <divide/>
+ <cn>1</cn>
+ <cn>2</cn>
+ </apply>
+ </annotation-xml>
+ <annotation-xml>
+ <svg width="25" height="75" xmlns="http://www.w3.org/2000/svg">
+ <path stroke-width="5.8743"
+ d="m5.9157 27.415h6.601v-22.783l-7.1813 1.4402v-3.6805l7.1408
+ -1.4402h4.0406v26.464h6.601v3.4005h-17.203z"/>
+ <path stroke="#000000" stroke-width="2.3409"
+ d="m0.83496 39.228h23.327"/>
+ <path stroke-width="5.8743"
+ d="m8.696 70.638h14.102v3.4005h-18.963v-3.4005q2.3004-2.3804
+ 6.2608-6.3813 3.9806-4.0206 5.0007-5.1808 1.9403-2.1803
+ 2.7004-3.6805 0.78011-1.5202 0.78011-2.9804 0-2.3804
+ -1.6802-3.8806-1.6603-1.5002-4.3406-1.5002-1.9003 0-4.0206
+ 0.6601-2.1003 0.6601-4.5007 2.0003v-4.0806q2.4404-0.98013
+ 4.5607-1.4802 2.1203-0.50007 3.8806-0.50007 4.6407 0 7.401
+ 2.3203 2.7604 2.3203 2.7604 6.2009 0 1.8403-0.7001 3.5006
+ -0.68013 1.6402-2.5004 3.8806-0.50007 0.58009-3.1805 3.3605
+ -2.6804 2.7604-7.5614 7.7412z"/>
+ </svg>
+ </annotation-xml>
+ <annotation-xml encoding="application/xhtml+xml">
+ <div style="display: inline-flex;
+ flex-direction: column; align-items: center;">
+ <div>1</div>
+ <div>―</div>
+ <div>2</div>
+ </div>
+ </annotation-xml>
+ </semantics>
+</math>
+
+
+ The <semantics>
element accepts the attributes
+ described in 2.1.3 Global Attributes. Its layout algorithm
+ is the same as the mrow
element.
+ The user agent stylesheet
+ must contain the following rule in order to only render the annotated
+ MathML expression:
+
semantics > :not(:first-child) {
+ display: none;
+}
+
+ The <annotation-xml>
and
+ <annotation>
element accepts the attributes
+ described in 2.1.3 Global Attributes as well as the
+ following attribute:
+
encoding
+ This specification does not define any observable behavior that is + specific to the encoding attribute. +
+
+ The layout algorithm of the <annotation-xml>
+ and <annotation>
+ element is the same as the mtext
element.
+
encoding
attribute to distinguish
+ annotations
+ for HTML integration point,
+ clipboard copy, alternative rendering, etc.
+ In particular, CSS can be used to render alternative annotations, e.g.
+ /* Hide the annotated child. */
+semantics > :first-child { display: none; }
+ /* Show all text annotations. */
+semantics > annotation { display: inline; }
+/* Show all HTML annotations. */
+semantics > annotation-xml[encoding="text/html" i],
+semantics > annotation-xml[encoding="application/xhtml+xml" i] {
+ display: inline-block;
+}
+ The display
property
+ from CSS Display Module Level 3
+ is extended with a new inner display type:
+
Name: | +display | +
---|---|
New values: | +<display-outside> || [ <display-inside> | math ] | +
+ For elements that are not MathML elements, if the specified
+ value of display
is block math
or
+ inline math
then the computed value is
+ block flow
and inline flow
respectively.
+ For the mtable
element
+ the computed value is block table
and
+ inline table
respectively.
+ For the mtr
element, the computed value
+ is table-row
.
+ For the mtd
element, the computed value
+ is table-cell
.
+
+ MathML elements with a
+ computed display
value equal to
+ block math
or inline math
+ control box generation and layout according to their tag name, as
+ described in the relevant sections.
+ Unknown MathML elements
+ behave the same as the mrow
element.
+
display: block math
and
+ display: inline math
values provide a default
+ layout for MathML elements while at the same time allowing
+ to override it with either native display values or
+ custom values.
+ This allows authors or polyfills to define their own custom notations
+ to tweak or extend MathML Core.
+
+ In the following example, the default layout of the
+ MathML mrow
element is overridden to render its
+ content as a grid.
+
<math>
+ <msup>
+ <mrow>
+ <mo symmetric="false">[</mo>
+ <mrow style="display: block; width: 4.5em;">
+ <mrow style="display: grid;
+ grid-template-columns: 1.5em 1.5em 1.5em;
+ grid-template-rows: 1.5em 1.5em;
+ justify-items: center;
+ align-items: center;">
+ <mn>12</mn>
+ <mn>34</mn>
+ <mn>56</mn>
+ <mn>7</mn>
+ <mn>8</mn>
+ <mn>9</mn>
+ </mrow>
+ </mrow>
+ <mo symmetric="false">]</mo>
+ </mrow>
+ <mi>α</mi>
+ </msup>
+</math>
+
+ The text-transform property + from CSS Text Module Level 3 + is extended with a new value: +
+Name: | +text-transform + | +
---|---|
New value: | +math-auto | +
+ On text nodes containing a single character, if the computed value
+ is math-auto
then the transformed text is obtained by
+ performing conversion of each character according to the
+ italic table.
+
A common style convention is to render
+ identifiers with multiple letters (e.g. the function name "exp")
+ with normal style and identifiers with a single letter
+ (e.g. the variable "n") with italic style. The
+ math-auto
property is intended to implement this
+ default behavior, which can be overridden by authors if necessary.
+ Note that mathematical fonts are designed with a special kind
+ of italic glyphs located at the
+ Unicode positions of
+ C.13 italic
mappings, which differ from the shaping
+ obtained via italic font style. Compare this
+ mathematical formula
+ rendered with the Latin Modern Math font using
+ font-style: italic
(left) and
+ text-transform: math-auto
(right):
+
Name: | ++ math-style + | +
---|---|
Value: | +normal | compact | +
Initial: | +normal | +
Applies to: | +All elements | +
Inherited: | +yes | +
Percentages: | n/a |
Computed value: | +specified keyword | +
Canonical order: | +n/a | +
Animation type: | +not animatable | +
Media: | +visual | +
+ When math-style
is compact
,
+ the math layout on descendants tries to minimize the
+ logical height by
+ applying the following rules:
+
math
and
+ the computed value of math-depth
is
+ auto-add
(default for mfrac
)
+ as described in 4.5 The math-depth
property.largeop
property
+ do not follow rules from 3.2.4.3 Layout of operators
+ to make them bigger.movablelimits
property are actually drawn as sub-/superscripts
+ as described in 3.4.2.1 Children of <munder>
,
+ <mover>
, <munderover>
.The following example shows a
+ mathematical formula rendered with
+ its math
root styled with
+ math-style: compact
(left) and
+ math-style: normal
(right).
+ In the former case, the font-size is automatically scaled down
+ within the fractions and the summation limits are rendered as
+ subscript and superscript of the ∑. In the latter case, the ∑ is
+ drawn bigger than normal text and
+ vertical gaps within fractions (even relative to current
+ font-size) are larger.
+
These two math-style
values typically correspond to
+ mathematical expressions in inline and display
+ mode respectively [TeXBook].
+ A mathematical formula in display mode
+ may automatically switch to inline mode within some subformulas
+ (e.g. scripts, matrix elements, numerators and denominators, etc)
+ and it is sometimes desirable to override this default behavior.
+ The math-style property allows to easily implement these
+ features for MathML in the
+ user agent stylesheet
+ and with the displaystyle attribute; and also exposes
+ them to polyfills.
+
Name: | ++ math-shift + | +
---|---|
Value: | +normal | compact | +
Initial: | +normal | +
Applies to: | +All elements | +
Inherited: | +yes | +
Percentages: | n/a |
Computed value: | +specified keyword | +
Canonical order: | +n/a | +
Animation type: | +not animatable | +
Media: | +visual | +
+ If the value of math-shift
is compact
, the math layout on descendants will use the
+ superscriptShiftUpCramped parameter to place superscript.
+ If the value of math-shift
is normal
, the math
+ will use the superscriptShiftUp parameter instead.
+
+ This property is used for positioning superscript during the layout
+ of MathML scripted elements.
+ See § 3.4.1 Subscripts and Superscripts <msub>
, <msup>
, <msubsup>
,
+ 3.4.3 Prescripts and Tensor Indices <mmultiscripts>
and
+ 3.4.2 Underscripts and Overscripts <munder>
, <mover>
, <munderover>
.
+
In the following example, the two "x squared" are rendered with
+ compact math-style and the same font-size
.
+ However, the one within the square root is rendered with
+ compact math-shift
while
+ the other one is rendered with
+ normal math-shift
, leading
+ to subtle different shift of the superscript "2".
+
Per [TeXBook], a + mathematical formula uses normal style by default but may + switch to compact style ("cramped" in TeX's terminology) + within some subformulas + (e.g. radicals, fraction denominators, etc). + The math-shift property allows to easily + implement these rules for MathML in the + user agent stylesheet. + Page authors or developers of polyfills may also benefit from + having access to this property to tweak or refine the default + implementation. +
+
+ A new math-depth property is introduced to describe a notion
+ of "depth" for each element of a mathematical formula, with respect to
+ the top-level container of that formula. Concretely, this is used to
+ determine the computed value of the
+ font-size
+ property when its specified value is math
.
+
Name: | ++ math-depth + | +
---|---|
Value: | +auto-add | add(<integer>) | <integer> | +
Initial: | +0 | +
Applies to: | +All elements | +
Inherited: | +yes | +
Percentages: | n/a |
Computed value: | +an integer, see below | +
Canonical order: | +n/a | +
Animation type: | +not animatable | +
Media: | +visual | +
The computed value of the math-depth value is + determined as follows:
+auto-add
and
+ the inherited value of math-style
+ is compact
then the computed value of
+ math-depth of the element is its inherited value plus one.
+ add(<integer>)
then the computed value
+ of math-depth of the element is its inherited value plus
+ the specified integer.
+ <integer>
then the computed value
+ of math-depth of the element is the specified integer.
+
+ If the specified value of
+ font-size
+ is math
then the
+ computed value of
+ font-size
+ is obtained by multiplying the inherited value of
+ font-size
+ by a nonzero scale factor calculated by the
+ following procedure:
+
InvertScaleFactor
to true.InvertScaleFactor
to false.InvertScaleFactor
is false and 1/S otherwise.The following example shows a mathematical formula + with normal math-style + rendered with the Latin Modern Math font. + When entering subexpressions like scripts or fractions, + the font-size is automatically scaled down according to the + values of MATH table contained in that font. + Note that font-size is scaled down when + entering the superscripts but even faster when entering a + root's prescript. Also it is scaled down when entering the inner + fraction but not when entering the outer one, due to automatic + change of math-style in fractions. +
+ +These rules from [TeXBook] are subtle and it's worth having a
+ separate math-depth
mechanism to express and
+ handle them. They can be implemented in MathML using the
+ user agent stylesheet.
+ Page authors or developers of polyfills may also benefit from
+ having access to this property to tweak or refine the default
+ implementation. In particular, the scriptlevel attribute
+ from MathML provides a way to perform math-depth
+ changes.
+
+ This chapter describes features provided by MATH
table
+ of an OpenType font [OPEN-FONT-FORMAT]. Throughout this chapter,
+ a C-like notation
+ Table.Subtable1[index].Subtable2.Parameter
is used to
+ denote OpenType parameters.
+ Such parameters may not be available (e.g. if the font lacks one of the
+ subtable, has an invalid offset, etc) and so fallback options are
+ provided.
+
+ OpenType values expressed in design units (perhaps indirectly via a
+ MathValueRecord
entry) are scaled to appropriate values
+ for layout purpose, taking into account
+ head.unitsPerEm
, CSS
+ font-size
+ or zoom level.
+
These are global layout constants for the + first available font:
+post.underlineThickness
or
+ Default fallback constant if the constant is not available.
+ MATH.MathConstants.scriptPercentScaleDown / 100
or
+ 0.71 if MATH.MathConstants.scriptPercentScaleDown
is
+ null or not available.
+ MATH.MathConstants.scriptScriptPercentScaleDown / 100
or
+ 0.5041 if
+ MATH.MathConstants.scriptScriptPercentScaleDown
is
+ null or not available.
+ MATH.MathConstants.displayOperatorMinHeight
or
+ Default fallback constant
+ if the constant is not available.MATH.MathConstants.axisHeight
or half
+ OS/2.sxHeight
if the constant is not available.MATH.MathConstants.accentBaseHeight
or OS/2.sxHeight
if the constant is not available.MATH.MathConstants.subscriptShiftDown
or OS/2.ySubscriptYOffset
if the constant is not available.MATH.MathConstants.subscriptTopMax
or ⅘ × OS/2.sxHeight
if the constant is not available.MATH.MathConstants.subscriptBaselineDropMin
or
+ Default fallback constant if the constant is not available.MATH.MathConstants.superscriptShiftUp
or OS/2.ySuperscriptYOffset
if the constant is not available.MATH.MathConstants.superscriptShiftUpCramped
or
+ Default fallback constant if the constant is not available.MATH.MathConstants.superscriptBottomMin
or ¼ × OS/2.sxHeight
if the constant is not available.MATH.MathConstants.superscriptBaselineDropMax
or
+ Default fallback constant if the constant is not available.MATH.MathConstants.subSuperscriptGapMin
or 4 × default rule thickness if the constant is not available.MATH.MathConstants.superscriptBottomMaxWithSubscript
or ⅘ × OS/2.sxHeight
if the constant is not available.MATH.MathConstants.spaceAfterScript
or 1/24em if the constant is not available.MATH.MathConstants.upperLimitGapMin
or
+ Default fallback constant if the constant is not available.MATH.MathConstants.upperLimitBaselineRiseMin
or Default fallback constant if the constant is not available.MATH.MathConstants.lowerLimitGapMin
or Default fallback constant if the constant is not available.MATH.MathConstants.lowerLimitBaselineDropMin
or Default fallback constant if the constant is not available.MATH.MathConstants.stackTopShiftUp
or Default fallback constant if the constant is not available.MATH.MathConstants.stackTopDisplayStyleShiftUp
or Default fallback constant if the constant is not available.MATH.MathConstants.stackBottomShiftDown
or Default fallback constant if the constant is not available.MATH.MathConstants.stackBottomDisplayStyleShiftDown
or Default fallback constant if the constant is not available.MATH.MathConstants.stackGapMin
or 3 × default rule thickness if the constant is not available.MATH.MathConstants.stackDisplayStyleGapMin
or 7 × default rule thickness if the constant is not available.MATH.MathConstants.stretchStackTopShiftUp
or Default fallback constant if the constant is not available.MATH.MathConstants.stretchStackBottomShiftDown
or Default fallback constant if the constant is not available.MATH.MathConstants.stretchStackGapAboveMin
or Default fallback constant if the constant is not available.MATH.MathConstants.stretchStackGapBelowMin
or Default fallback constant if the constant is not available.MATH.MathConstants.fractionNumeratorShiftUp
or Default fallback constant if the constant is not available.MATH.MathConstants.fractionNumeratorDisplayStyleShiftUp
or Default fallback constant if the constant is not available.MATH.MathConstants.fractionDenominatorShiftDown
or Default fallback constant if the constant is not available.MATH.MathConstants.fractionDenominatorDisplayStyleShiftDown
or Default fallback constant if the constant is not available.MATH.MathConstants.fractionNumeratorGapMin
or default rule thickness if the constant is not available.MATH.MathConstants.fractionNumDisplayStyleGapMin
or 3 × default rule thickness if the constant is not available.MATH.MathConstants.fractionRuleThickness
or default rule thickness if the constant is not available.MATH.MathConstants.fractionDenominatorGapMin
or default rule thickness if the constant is not available.MATH.MathConstants.fractionDenomDisplayStyleGapMin
or 3 × default rule thickness if the constant is not available.MATH.MathConstants.overbarVerticalGap
or 3 × default rule thickness if the constant is not available.MATH.MathConstants.overbarExtraAscender
or default rule thickness if the constant is not available.MATH.MathConstants.underbarVerticalGap
or 3 × default rule thickness if the constant is not available.MATH.MathConstants.underbarExtraDescender
or default rule thickness if the constant is not available.MATH.MathConstants.radicalVerticalGap
or 1¼ × default rule thickness if the constant is not available.MATH.MathConstants.radicalDisplayStyleVerticalGap
or default rule thickness + ¼ OS/2.sxHeight
if the constant is not available.MATH.MathConstants.radicalRuleThickness
or default rule thickness if the constant is not available.MATH.MathConstants.radicalExtraAscender
or default rule thickness if the constant is not available.MATH.MathConstants.radicalKernBeforeDegree
or 5/18em if the constant is not available.MATH.MathConstants.radicalKernAfterDegree
or −10/18em if the constant is not available.MATH.MathConstants.radicalDegreeBottomRaisePercent / 100.0
or 0.6 if the constant is not available.+ These are per-glyph tables for the + first available font:
+MATH.MathGlyphInfo.MathItalicsCorrectionInfo
+ of italics correction values. Use the corresponding value in
+ MATH.MathGlyphInfo.MathItalicsCorrectionInfo.italicsCorrection
+ if there is one for the requested glyph or
+ 0
otherwise.
+ MATH.MathGlyphInfo.MathTopAccentAttachment
+ of positioning top math accents along the inline axis.
+ Use the corresponding value in
+ MATH.MathGlyphInfo.MathTopAccentAttachment.topAccentAttachment
+ if there is one for the requested glyph or
+ half the advance width of the glyph otherwise.
+
+ This section describes how to handle stretchy glyphs of arbitrary
+ size using the MATH.MathVariants
table.
+
+ This section is based on [OPEN-TYPE-MATH-IN-HARFBUZZ]. + For convenience, the following definitions are used: +
+MATH.MathVariant.minConnectorOverlap
.
+ GlyphPartRecord
is an extender
+ if and only if
+ GlyphPartRecord.partFlags
has the
+ fExtender
flag set.
+ GlyphAssembly
is horizontal
+ if it is obtained from
+ MathVariant.horizGlyphConstructionOffsets
.
+ Otherwise it is vertical (and obtained from
+ MathVariant.vertGlyphConstructionOffsets
).
+ GlyphAssembly
table,
+ NExt (respectively
+ NNonExt) is the number of extenders
+ (respectively non-extenders) in
+ GlyphAssembly.partRecords
.
+ GlyphAssembly
table,
+ SExt (respectively
+ SNonExt) is the sum of
+ GlyphPartRecord.fullAdvance
+ for all extenders (respectively non-extenders) in
+ GlyphAssembly.partRecords
.
+
+ User agents must treat the GlyphAssembly
as invalid
+ if the following conditions are not satisfied:
+
GlyphPartRecord
+ in GlyphAssembly.partRecords
,
+ the values of
+ GlyphPartRecord.startConnectorLength
and
+ GlyphPartRecord.endConnectorLength
+ must be at least omin.
+ Otherwise, it is not possible to satisfy the condition of
+ MathVariant.minConnectorOverlap
.
+ + In this specification, a glyph assembly is built by repeating each + extender r times and using the same overlap value o between each + glyph. The number of glyphs in such an assembly is + AssemblyGlyphCount(r) = NNonExt + r NExt while + the stretch size is + AssembySize(o, r) = + SNonExt + r SExt + − o (AssemblyGlyphCount(r) − 1). +
++ rmin is the minimal number of repetitions + needed to obtain an assembly of + size at least T, i.e. the minimal r such that + AssembySize(omin, r) ≥ T. + It is defined as the maximum between 0 and the ceiling of + ((T − SNonExt + omin (NNonExt − 1)) / SExt,NonOverlapping). +
+omax,theorical = (AssembySize(0, rmin) − T) / (AssemblyGlyphCount(rmin) − 1) + is the theorical overlap obtained by + splitting evenly the extra size of an assembly built with + null overlap.
++ omax is the + maximum overlap possible to build an assembly of size at least + T by repeating each extender rmin times. + + If AssemblyGlyphCount(rmin) ≤ 1, then the actual overlap value is irrelevant. + Otherwise, omax is defined to be the minimum of: +
+GlyphPartRecord.startConnectorLength
for all
+ the entries in
+ GlyphAssembly.partRecords
, excluding the
+ last one if it is not an extender.
+ GlyphPartRecord.endConnectorLength
for all
+ the entries in
+ GlyphAssembly.partRecords
, excluding the
+ first one if it is not an extender.
+ + The glyph assembly stretch size + for a target size T is + AssembySize(omax, rmin). +
++ The + glyph assembly width, + glyph assembly ascent + and glyph assembly descent + are defined as follows: +
+GlyphAssembly
is vertical,
+ the width is the maximum advance width of the glyphs of ID
+ GlyphPartRecord.glyphID
for all the
+ GlyphPartRecord
in
+ GlyphAssembly.partRecords
,
+ the ascent is the
+ glyph assembly stretch size
+ for a given target size T
+ and the descent is 0.
+ GlyphAssembly
is horizontal,
+ the width is glyph assembly stretch size
+ for a given target size T
while
+ the ascent (respectively descent) is the
+ maximum ascent (respectively descent) of the glyphs of ID
+ GlyphPartRecord.glyphID
for all the
+ GlyphPartRecord
in
+ GlyphAssembly.partRecords
.
+ + The glyph assembly height is the sum + of the glyph assembly ascent and + glyph assembly descent. +
+T
.
+ The shaping of the glyph assembly + is performed with the following algorithm: +
+(x, y)
to (0, 0)
,
+ RepetitionCounter
to 0 and
+ PartIndex
to -1.
+ RepetitionCounter
is 0:
+ PartIndex
.PartIndex
is
+ GlyphAssembly.partCount
+ then stop.Part
to
+ GlyphAssembly.partRecords[PartIndex]
.
+ Set RepetitionCounter
to
+ rmin if
+ Part
is an extender and to 1 otherwise.
+ Part.glyphID
+ so that its (left, baseline) coordinates
+ are at position (x, y)
.
+ Set x
to
+ x + Part.fullAdvance −
+ omax.
+ Part.glyphID
+ so that its (left, bottom) coordinates
+ are at position (x, y)
.
+ Set y
to
+ y − Part.fullAdvance +
+ omax.
+ RepetitionCounter
.+ The preferred inline size of a glyph stretched along the block + axis + is calculated using the following algorithm: +
+S
to the glyph's advance width.
+ MathGlyphConstruction
table
+ in the MathVariants.vertGlyphConstructionOffsets
+ table for the given glyph:
+ MathGlyphVariantRecord
in
+ MathGlyphConstruction.mathGlyphVariantRecord
,
+ ensure that S
is at least
+ the advance width of the glyph of id
+ MathGlyphVariantRecord.variantGlyph
.
+ GlyphAssembly
subtable,
+ then ensure
+ that S
is at least the
+ glyph assembly width.
+ S
.
+ The algorithm to shape a stretchy glyph to inline
+ (respectively block) dimension T
+ is the following:
+
MathGlyphConstruction
table
+ in the MathVariants.horizGlyphConstructionOffsets
+ table (respectively
+ MathVariants.vertGlyphConstructionOffsets
table)
+ for the given glyph then exit with failure.
+ T
+ then use normal shaping and bounding box for that glyph,
+ the MathItalicsCorrectionInfo for that glyph as
+ italic correction and exit with success.
+ MathGlyphVariantRecord
in
+ MathGlyphConstruction.mathGlyphVariantRecord
.
+ If one MathGlyphVariantRecord.advanceMeasurement
+ is at least T
then use
+ normal shaping and bounding box
+ for MathGlyphVariantRecord.variantGlyph
,
+ the MathItalicsCorrectionInfo for that glyph as
+ italic correction and exit with success.
+ GlyphAssembly
subtable
+ then use the bounding box given by
+ glyph assembly width,
+ glyph assembly height,
+ glyph assembly ascent,
+ glyph assembly descent, the value
+ GlyphAssembly.italicsCorrection
as italic
+ correction, perform shaping of the glyph assembly and
+ exit with success.
+ T
, then choose last one that was tried and exit
+ with success.
+ @namespace url(http://www.w3.org/1998/Math/MathML);
+
+/* Universal rules */
+* {
+ font-size: math;
+ display: block math;
+ writing-mode: horizontal-tb !important;
+}
+
+/* The <math> element */
+math {
+ direction: ltr;
+ text-indent: 0;
+ letter-spacing: normal;
+ line-height: normal;
+ word-spacing: normal;
+ font-family: math;
+ font-size: inherit;
+ font-style: normal;
+ font-weight: normal;
+ display: inline math;
+ math-shift: normal;
+ math-style: compact;
+ math-depth: 0;
+}
+math[display="block" i] {
+ display: block math;
+ math-style: normal;
+}
+math[display="inline" i] {
+ display: inline math;
+ math-style: compact;
+}
+
+/* <mrow>-like elements */
+semantics > :not(:first-child) {
+ display: none;
+}
+maction > :not(:first-child) {
+ display: none;
+}
+merror {
+ border: 1px solid red;
+ background-color: lightYellow;
+}
+mphantom {
+ visibility: hidden;
+}
+
+/* Token elements */
+mi {
+ text-transform: math-auto;
+}
+
+/* Tables */
+mtable {
+ display: inline-table;
+ math-style: compact;
+}
+mtr {
+ display: table-row;
+}
+mtd {
+ display: table-cell;
+ /* Centering inside table cells should rely on box alignment properties.
+ See https://github.com/w3c/mathml-core/issues/156 */
+ text-align: center;
+ padding: 0.5ex 0.4em;
+}
+
+/* Fractions */
+mfrac {
+ padding-inline: 1px;
+}
+mfrac > * {
+ math-depth: auto-add;
+ math-style: compact;
+}
+mfrac > :nth-child(2) {
+ math-shift: compact;
+}
+
+/* Other rules for scriptlevel, displaystyle and math-shift */
+mroot > :not(:first-child) {
+ math-depth: add(2);
+ math-style: compact;
+}
+mroot, msqrt {
+ math-shift: compact;
+}
+msub > :not(:first-child),
+msup > :not(:first-child),
+msubsup > :not(:first-child),
+mmultiscripts > :not(:first-child),
+munder > :not(:first-child),
+mover > :not(:first-child),
+munderover > :not(:first-child) {
+ math-depth: add(1);
+ math-style: compact;
+}
+munder[accentunder="true" i] > :nth-child(2),
+mover[accent="true" i] > :nth-child(2),
+munderover[accentunder="true" i] > :nth-child(2),
+munderover[accent="true" i] > :nth-child(3) {
+ font-size: inherit;
+}
+msub > :nth-child(2),
+msubsup > :nth-child(2),
+mmultiscripts > :nth-child(even),
+mmultiscripts > mprescripts ~ :nth-child(odd),
+mover[accent="true" i] > :first-child,
+munderover[accent="true" i] > :first-child {
+ math-shift: compact;
+}
+mmultiscripts > mprescripts ~ :nth-child(even) {
+ math-shift: inherit;
+}
+ The algorithm to set the properties of an operator from its category is as follows:
+minsize
to 100%
.maxsize
to ∞
.lspace
and rspace
to the
+ value specified in the corresponding column.stretchy
,
+ symmetric
, largeop
,
+ movablelimits
, set that property to true
+ if it is listed in the last column or to false
+ otherwise.The algorithm to determine the category of an operator
+ (Content
, Form
) is as folllows:
+
Content
as an UTF-16 string does not have length
+ or 1 or 2 then exit with category Default
.
+ Content
is a single character in the
+ range U+0320–U+03FF
+ then exit with category Default
. Otherwise,
+ if it has two characters:
+ Content
is the surrogate pairs corresponding
+ to
+ U+1EEF0 ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL
+ or U+1EEF1 ARABIC MATHEMATICAL OPERATOR HAH WITH DAL and
+ Form
is postfix
, exit with category
+ I
.Content
with the first character and move to step
+ 3.Content
is listed in
+ Operators_2_ascii_chars
then
+ replace Content
with the
+ Unicode character
+ "U+0320 plus the index of Content
in
+ Operators_2_ascii_chars
" and move to step
+ 3.
+ Default
.Form
is infix and Content
corresponds
+ to one of U+007C VERTICAL LINE or U+223C TILDE OPERATOR then exit
+ with category ForceDefault
. If the category of
+ (Content
, Form
)
+ provided by table
+ Figure 25
+ has N/A encoding in table
+ Figure 26
+ (namely if it has category L
or M
), then
+ exit with that category.
+ Otherwise:
+ Key
to Content
if it is in
+ range U+0000–U+03FF; or to Content
− 0x1C00
+ if it is in range U+2000–U+2BFF. Otherwise, exit with
+ category Default
.
+ Key
according to whether Form
+ is infix
, prefix
,
+ postfix
respectively.
+ Key
is at most 0x2FFF.Entry
in table
+ Figure 27
+ such that Entry
% 0x4000 is equal to
+ Key
. If one is found then return the category
+ corresponding to encoding Entry
/ 0x1000 in
+ Figure 26.
+ Otherwise, return category Default
.
+ Special Table | Entries |
---|---|
Operators_2_ascii_chars | 18 entries (2-characters ASCII strings): '!!', '!=', '&&', '**', '*=', '++', '+=', '--', '-=', '->', '//', '/=', ':=', '<=', '<>', '==', '>=', '||', |
Operators_fence | 61 entries (16 Unicode ranges): [U+0028–U+0029], {U+005B}, {U+005D}, [U+007B–U+007D], {U+0331}, {U+2016}, [U+2018–U+2019], [U+201C–U+201D], [U+2308–U+230B], [U+2329–U+232A], [U+2772–U+2773], [U+27E6–U+27EF], {U+2980}, [U+2983–U+2999], [U+29D8–U+29DB], [U+29FC–U+29FD], |
Operators_separator | 3 entries: U+002C, U+003B, U+2063, |
(Content, Form) keys | Category |
---|---|
313 entries (35 Unicode ranges) in infix form: [U+2190–U+2195], [U+219A–U+21AE], [U+21B0–U+21B5], {U+21B9}, [U+21BC–U+21D5], [U+21DA–U+21F0], [U+21F3–U+21FF], {U+2794}, {U+2799}, [U+279B–U+27A1], [U+27A5–U+27A6], [U+27A8–U+27AF], {U+27B1}, {U+27B3}, {U+27B5}, {U+27B8}, [U+27BA–U+27BE], [U+27F0–U+27F1], [U+27F4–U+27FF], [U+2900–U+2920], [U+2934–U+2937], [U+2942–U+2975], [U+297C–U+297F], [U+2B04–U+2B07], [U+2B0C–U+2B11], [U+2B30–U+2B3E], [U+2B40–U+2B4C], [U+2B60–U+2B65], [U+2B6A–U+2B6D], [U+2B70–U+2B73], [U+2B7A–U+2B7D], [U+2B80–U+2B87], {U+2B95}, [U+2BA0–U+2BAF], {U+2BB8}, | A |
109 entries (32 Unicode ranges) in infix form: {U+002B}, {U+002D}, {U+002F}, {U+00B1}, {U+00F7}, {U+0322}, {U+2044}, [U+2212–U+2216], [U+2227–U+222A], {U+2236}, {U+2238}, [U+228C–U+228E], [U+2293–U+2296], {U+2298}, [U+229D–U+229F], [U+22BB–U+22BD], [U+22CE–U+22CF], [U+22D2–U+22D3], [U+2795–U+2797], {U+29B8}, {U+29BC}, [U+29C4–U+29C5], [U+29F5–U+29FB], [U+2A1F–U+2A2E], [U+2A38–U+2A3A], {U+2A3E}, [U+2A40–U+2A4F], [U+2A51–U+2A63], {U+2ADB}, {U+2AF6}, {U+2AFB}, {U+2AFD}, | B |
64 entries (33 Unicode ranges) in infix form: {U+0025}, {U+002A}, {U+002E}, [U+003F–U+0040], {U+005E}, {U+00B7}, {U+00D7}, {U+0323}, {U+032E}, {U+2022}, {U+2043}, [U+2217–U+2219], {U+2240}, {U+2297}, [U+2299–U+229B], [U+22A0–U+22A1], {U+22BA}, [U+22C4–U+22C7], [U+22C9–U+22CC], [U+2305–U+2306], {U+27CB}, {U+27CD}, [U+29C6–U+29C8], [U+29D4–U+29D7], {U+29E2}, [U+2A1D–U+2A1E], [U+2A2F–U+2A37], [U+2A3B–U+2A3D], {U+2A3F}, {U+2A50}, [U+2A64–U+2A65], [U+2ADC–U+2ADD], {U+2AFE}, | C |
52 entries (22 Unicode ranges) in prefix form: {U+0021}, {U+002B}, {U+002D}, {U+00AC}, {U+00B1}, {U+0331}, {U+2018}, {U+201C}, [U+2200–U+2201], [U+2203–U+2204], {U+2207}, [U+2212–U+2213], [U+221F–U+2222], [U+2234–U+2235], {U+223C}, [U+22BE–U+22BF], {U+2310}, {U+2319}, [U+2795–U+2796], {U+27C0}, [U+299B–U+29AF], [U+2AEC–U+2AED], | D |
40 entries (21 Unicode ranges) in postfix form: [U+0021–U+0022], [U+0025–U+0027], {U+0060}, {U+00A8}, {U+00B0}, [U+00B2–U+00B4], [U+00B8–U+00B9], [U+02CA–U+02CB], [U+02D8–U+02DA], {U+02DD}, {U+0311}, {U+0320}, {U+0325}, {U+0327}, {U+0331}, [U+2019–U+201B], [U+201D–U+201F], [U+2032–U+2037], {U+2057}, [U+20DB–U+20DC], {U+23CD}, | E |
30 entries in prefix form: U+0028, U+005B, U+007B, U+007C, U+2016, U+2308, U+230A, U+2329, U+2772, U+27E6, U+27E8, U+27EA, U+27EC, U+27EE, U+2980, U+2983, U+2985, U+2987, U+2989, U+298B, U+298D, U+298F, U+2991, U+2993, U+2995, U+2997, U+2999, U+29D8, U+29DA, U+29FC, | F |
30 entries in postfix form: U+0029, U+005D, U+007C, U+007D, U+2016, U+2309, U+230B, U+232A, U+2773, U+27E7, U+27E9, U+27EB, U+27ED, U+27EF, U+2980, U+2984, U+2986, U+2988, U+298A, U+298C, U+298E, U+2990, U+2992, U+2994, U+2996, U+2998, U+2999, U+29D9, U+29DB, U+29FD, | G |
27 entries (2 Unicode ranges) in prefix form: [U+222B–U+2233], [U+2A0B–U+2A1C], | H |
22 entries (13 Unicode ranges) in postfix form: [U+005E–U+005F], {U+007E}, {U+00AF}, [U+02C6–U+02C7], {U+02C9}, {U+02CD}, {U+02DC}, {U+02F7}, {U+0302}, {U+203E}, [U+2322–U+2323], [U+23B4–U+23B5], [U+23DC–U+23E1], | I |
22 entries (6 Unicode ranges) in prefix form: [U+220F–U+2211], [U+22C0–U+22C3], [U+2A00–U+2A0A], [U+2A1D–U+2A1E], {U+2AFC}, {U+2AFF}, | J |
7 entries (4 Unicode ranges) in infix form: {U+005C}, {U+005F}, [U+2061–U+2064], {U+2206}, | K |
6 entries (3 Unicode ranges) in prefix form: [U+2145–U+2146], {U+2202}, [U+221A–U+221C], | L |
3 entries in infix form: U+002C, U+003A, U+003B, | M |
Category | Form | Encoding | lspace | rspace | properties |
---|---|---|---|---|---|
Default | N/A | N/A | 0.2777777777777778em | 0.2777777777777778em | N/A |
ForceDefault | N/A | N/A | 0.2777777777777778em | 0.2777777777777778em | N/A |
A | infix | 0x0 | 0.2777777777777778em | 0.2777777777777778em | stretchy |
B | infix | 0x4 | 0.2222222222222222em | 0.2222222222222222em | N/A |
C | infix | 0x8 | 0.16666666666666666em | 0.16666666666666666em | N/A |
D | prefix | 0x1 | 0 | 0 | N/A |
E | postfix | 0x2 | 0 | 0 | N/A |
F | prefix | 0x5 | 0 | 0 | stretchy symmetric |
G | postfix | 0x6 | 0 | 0 | stretchy symmetric |
H | prefix | 0x9 | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
I | postfix | 0xA | 0 | 0 | stretchy |
J | prefix | 0xD | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
K | infix | 0xC | 0 | 0 | N/A |
L | prefix | N/A | 0.16666666666666666em | 0 | N/A |
M | infix | N/A | 0 | 0.16666666666666666em | N/A |
+ The intrinsic stretch axis a Unicode character
+ c
is inline if it belongs to the list below.
+ Otherwise, the intrinsic stretch axis of c
is
+ block.
+
This section is non-normative.
+ +
+ The following dictionary provides a human-readable version
+ of B.1 Operator Dictionary. Please refer to
+ 3.2.4.2 Dictionary-based attributes for explanation about
+ how to use this dictionary and how to
+ determine the values Content
and Form
+ indexing together
+ the dictionary.
+
+ The values for rspace
and lspace
are indicated
+ in the corresponding columns.
+ The values of
+ stretchy
,
+ symmetric
,
+ largeop
,
+ movablelimits
+ are true
+ if they are listed in the "properties" column.
+
Content | Stretch Axis | form | lspace | rspace | properties |
---|---|---|---|---|---|
< U+003C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
= U+003D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
> U+003E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
| U+007C | block | infix | 0.2777777777777778em | 0.2777777777777778em | fence |
↖ U+2196 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↗ U+2197 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↘ U+2198 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↙ U+2199 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↯ U+21AF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↶ U+21B6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↷ U+21B7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↸ U+21B8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↺ U+21BA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
↻ U+21BB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇖ U+21D6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇗ U+21D7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇘ U+21D8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇙ U+21D9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇱ U+21F1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⇲ U+21F2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∈ U+2208 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∉ U+2209 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∊ U+220A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∋ U+220B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∌ U+220C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∍ U+220D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∝ U+221D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∣ U+2223 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∤ U+2224 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∥ U+2225 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∦ U+2226 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∷ U+2237 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∹ U+2239 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∺ U+223A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∻ U+223B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∼ U+223C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∽ U+223D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
∾ U+223E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≁ U+2241 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≂ U+2242 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≃ U+2243 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≄ U+2244 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≅ U+2245 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≆ U+2246 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≇ U+2247 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≈ U+2248 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≉ U+2249 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≊ U+224A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≋ U+224B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≌ U+224C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≍ U+224D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≎ U+224E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≏ U+224F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≐ U+2250 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≑ U+2251 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≒ U+2252 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≓ U+2253 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≔ U+2254 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≕ U+2255 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≖ U+2256 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≗ U+2257 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≘ U+2258 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≙ U+2259 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≚ U+225A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≛ U+225B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≜ U+225C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≝ U+225D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≞ U+225E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≟ U+225F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≠ U+2260 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≡ U+2261 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≢ U+2262 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≣ U+2263 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≤ U+2264 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≥ U+2265 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≦ U+2266 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≧ U+2267 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≨ U+2268 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≩ U+2269 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≪ U+226A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≫ U+226B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≬ U+226C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≭ U+226D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≮ U+226E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≯ U+226F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≰ U+2270 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≱ U+2271 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≲ U+2272 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≳ U+2273 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≴ U+2274 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≵ U+2275 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≶ U+2276 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≷ U+2277 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≸ U+2278 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≹ U+2279 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≺ U+227A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≻ U+227B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≼ U+227C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≽ U+227D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≾ U+227E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
≿ U+227F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊀ U+2280 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊁ U+2281 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊂ U+2282 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊃ U+2283 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊄ U+2284 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊅ U+2285 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊆ U+2286 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊇ U+2287 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊈ U+2288 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊉ U+2289 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊊ U+228A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊋ U+228B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊏ U+228F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊐ U+2290 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊑ U+2291 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊒ U+2292 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊜ U+229C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊢ U+22A2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊣ U+22A3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊦ U+22A6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊧ U+22A7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊨ U+22A8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊩ U+22A9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊪ U+22AA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊫ U+22AB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊬ U+22AC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊭ U+22AD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊮ U+22AE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊯ U+22AF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊰ U+22B0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊱ U+22B1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊲ U+22B2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊳ U+22B3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊴ U+22B4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊵ U+22B5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊶ U+22B6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊷ U+22B7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⊸ U+22B8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋈ U+22C8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋍ U+22CD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋐ U+22D0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋑ U+22D1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋔ U+22D4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋕ U+22D5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋖ U+22D6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋗ U+22D7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋘ U+22D8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋙ U+22D9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋚ U+22DA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋛ U+22DB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋜ U+22DC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋝ U+22DD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋞ U+22DE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋟ U+22DF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋠ U+22E0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋡ U+22E1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋢ U+22E2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋣ U+22E3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋤ U+22E4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋥ U+22E5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋦ U+22E6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋧ U+22E7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋨ U+22E8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋩ U+22E9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋪ U+22EA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋫ U+22EB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋬ U+22EC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋭ U+22ED | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋲ U+22F2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋳ U+22F3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋴ U+22F4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋵ U+22F5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋶ U+22F6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋷ U+22F7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋸ U+22F8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋹ U+22F9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋺ U+22FA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋻ U+22FB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋼ U+22FC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋽ U+22FD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋾ U+22FE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⋿ U+22FF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⌁ U+2301 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⍼ U+237C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⎋ U+238B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➘ U+2798 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➚ U+279A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➧ U+27A7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➲ U+27B2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➴ U+27B4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➶ U+27B6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➷ U+27B7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
➹ U+27B9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⟂ U+27C2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⟲ U+27F2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⟳ U+27F3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤡ U+2921 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤢ U+2922 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤣ U+2923 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤤ U+2924 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤥ U+2925 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤦ U+2926 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤧ U+2927 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤨ U+2928 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤩ U+2929 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤪ U+292A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤫ U+292B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤬ U+292C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤭ U+292D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤮ U+292E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤯ U+292F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤰ U+2930 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤱ U+2931 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤲ U+2932 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤳ U+2933 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤸ U+2938 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤹ U+2939 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤺ U+293A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤻ U+293B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤼ U+293C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤽ U+293D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤾ U+293E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⤿ U+293F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥀ U+2940 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥁ U+2941 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥶ U+2976 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥷ U+2977 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥸ U+2978 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥹ U+2979 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥺ U+297A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⥻ U+297B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⦁ U+2981 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⦂ U+2982 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⦶ U+29B6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⦷ U+29B7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⦹ U+29B9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧀ U+29C0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧁ U+29C1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧎ U+29CE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧏ U+29CF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧐ U+29D0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧑ U+29D1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧒ U+29D2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧓ U+29D3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧟ U+29DF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧡ U+29E1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧣ U+29E3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧤ U+29E4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧥ U+29E5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧦ U+29E6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⧴ U+29F4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩦ U+2A66 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩧ U+2A67 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩨ U+2A68 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩩ U+2A69 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩪ U+2A6A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩫ U+2A6B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩬ U+2A6C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩭ U+2A6D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩮ U+2A6E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩯ U+2A6F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩰ U+2A70 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩱ U+2A71 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩲ U+2A72 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩳ U+2A73 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩴ U+2A74 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩵ U+2A75 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩶ U+2A76 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩷ U+2A77 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩸ U+2A78 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩹ U+2A79 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩺ U+2A7A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩻ U+2A7B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩼ U+2A7C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩽ U+2A7D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩾ U+2A7E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⩿ U+2A7F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪀ U+2A80 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪁ U+2A81 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪂ U+2A82 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪃ U+2A83 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪄ U+2A84 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪅ U+2A85 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪆ U+2A86 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪇ U+2A87 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪈ U+2A88 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪉ U+2A89 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪊ U+2A8A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪋ U+2A8B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪌ U+2A8C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪍ U+2A8D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪎ U+2A8E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪏ U+2A8F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪐ U+2A90 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪑ U+2A91 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪒ U+2A92 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪓ U+2A93 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪔ U+2A94 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪕ U+2A95 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪖ U+2A96 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪗ U+2A97 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪘ U+2A98 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪙ U+2A99 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪚ U+2A9A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪛ U+2A9B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪜ U+2A9C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪝ U+2A9D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪞ U+2A9E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪟ U+2A9F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪠ U+2AA0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪡ U+2AA1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪢ U+2AA2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪣ U+2AA3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪤ U+2AA4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪥ U+2AA5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪦ U+2AA6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪧ U+2AA7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪨ U+2AA8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪩ U+2AA9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪪ U+2AAA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪫ U+2AAB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪬ U+2AAC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪭ U+2AAD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪮ U+2AAE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪯ U+2AAF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪰ U+2AB0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪱ U+2AB1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪲ U+2AB2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪳ U+2AB3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪴ U+2AB4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪵ U+2AB5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪶ U+2AB6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪷ U+2AB7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪸ U+2AB8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪹ U+2AB9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪺ U+2ABA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪻ U+2ABB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪼ U+2ABC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪽ U+2ABD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪾ U+2ABE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⪿ U+2ABF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫀ U+2AC0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫁ U+2AC1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫂ U+2AC2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫃ U+2AC3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫄ U+2AC4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫅ U+2AC5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫆ U+2AC6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫇ U+2AC7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫈ U+2AC8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫉ U+2AC9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫊ U+2ACA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫋ U+2ACB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫌ U+2ACC | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫍ U+2ACD | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫎ U+2ACE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫏ U+2ACF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫐ U+2AD0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫑ U+2AD1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫒ U+2AD2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫓ U+2AD3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫔ U+2AD4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫕ U+2AD5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫖ U+2AD6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫗ U+2AD7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫘ U+2AD8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫙ U+2AD9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫚ U+2ADA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫞ U+2ADE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫟ U+2ADF | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫠ U+2AE0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫡ U+2AE1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫢ U+2AE2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫣ U+2AE3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫤ U+2AE4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫥ U+2AE5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫦ U+2AE6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫧ U+2AE7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫨ U+2AE8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫩ U+2AE9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫪ U+2AEA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫫ U+2AEB | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫮ U+2AEE | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫲ U+2AF2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫳ U+2AF3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫴ U+2AF4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫵ U+2AF5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫷ U+2AF7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫸ U+2AF8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫹ U+2AF9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⫺ U+2AFA | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬀ U+2B00 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬁ U+2B01 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬂ U+2B02 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬃ U+2B03 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬈ U+2B08 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬉ U+2B09 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬊ U+2B0A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬋ U+2B0B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⬿ U+2B3F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭍ U+2B4D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭎ U+2B4E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭏ U+2B4F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭚ U+2B5A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭛ U+2B5B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭜ U+2B5C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭝ U+2B5D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭞ U+2B5E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭟ U+2B5F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭦ U+2B66 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭧ U+2B67 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭨ U+2B68 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭩ U+2B69 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭮ U+2B6E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭯ U+2B6F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭶ U+2B76 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭷ U+2B77 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭸ U+2B78 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⭹ U+2B79 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮈ U+2B88 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮉ U+2B89 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮊ U+2B8A | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮋ U+2B8B | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮌ U+2B8C | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮍ U+2B8D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮎ U+2B8E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮏ U+2B8F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮔ U+2B94 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮰ U+2BB0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮱ U+2BB1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮲ U+2BB2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮳ U+2BB3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮴ U+2BB4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮵ U+2BB5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮶ U+2BB6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⮷ U+2BB7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
⯑ U+2BD1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String != U+0021 U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String *= U+002A U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String += U+002B U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String -= U+002D U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String -> U+002D U+003E | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String // U+002F U+002F | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String /= U+002F U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String := U+003A U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String <= U+003C U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String == U+003D U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String >= U+003E U+003D | block | infix | 0.2777777777777778em | 0.2777777777777778em | N/A |
String || U+007C U+007C | block | infix | 0.2777777777777778em | 0.2777777777777778em | fence |
← U+2190 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↑ U+2191 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
→ U+2192 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↓ U+2193 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↔ U+2194 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↕ U+2195 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↚ U+219A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↛ U+219B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↜ U+219C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↝ U+219D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↞ U+219E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↟ U+219F | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↠ U+21A0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↡ U+21A1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↢ U+21A2 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↣ U+21A3 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↤ U+21A4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↥ U+21A5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↦ U+21A6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↧ U+21A7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↨ U+21A8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↩ U+21A9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↪ U+21AA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↫ U+21AB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↬ U+21AC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↭ U+21AD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↮ U+21AE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↰ U+21B0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↱ U+21B1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↲ U+21B2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↳ U+21B3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↴ U+21B4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↵ U+21B5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↹ U+21B9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↼ U+21BC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↽ U+21BD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↾ U+21BE | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
↿ U+21BF | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇀ U+21C0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇁ U+21C1 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇂ U+21C2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇃ U+21C3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇄ U+21C4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇅ U+21C5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇆ U+21C6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇇ U+21C7 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇈ U+21C8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇉ U+21C9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇊ U+21CA | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇋ U+21CB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇌ U+21CC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇍ U+21CD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇎ U+21CE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇏ U+21CF | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇐ U+21D0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇑ U+21D1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇒ U+21D2 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇓ U+21D3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇔ U+21D4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇕ U+21D5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇚ U+21DA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇛ U+21DB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇜ U+21DC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇝ U+21DD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇞ U+21DE | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇟ U+21DF | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇠ U+21E0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇡ U+21E1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇢ U+21E2 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇣ U+21E3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇤ U+21E4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇥ U+21E5 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇦ U+21E6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇧ U+21E7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇨ U+21E8 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇩ U+21E9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇪ U+21EA | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇫ U+21EB | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇬ U+21EC | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇭ U+21ED | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇮ U+21EE | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇯ U+21EF | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇰ U+21F0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇳ U+21F3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇴ U+21F4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇵ U+21F5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇶ U+21F6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇷ U+21F7 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇸ U+21F8 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇹ U+21F9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇺ U+21FA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇻ U+21FB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇼ U+21FC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇽ U+21FD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇾ U+21FE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⇿ U+21FF | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➔ U+2794 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➙ U+2799 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➛ U+279B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➜ U+279C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➝ U+279D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➞ U+279E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➟ U+279F | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➠ U+27A0 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➡ U+27A1 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➥ U+27A5 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➦ U+27A6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➨ U+27A8 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➩ U+27A9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➪ U+27AA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➫ U+27AB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➬ U+27AC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➭ U+27AD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➮ U+27AE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➯ U+27AF | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➱ U+27B1 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➳ U+27B3 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➵ U+27B5 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➸ U+27B8 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➺ U+27BA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➻ U+27BB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➼ U+27BC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➽ U+27BD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
➾ U+27BE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟰ U+27F0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟱ U+27F1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟴ U+27F4 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟵ U+27F5 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟶ U+27F6 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟷ U+27F7 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟸ U+27F8 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟹ U+27F9 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟺ U+27FA | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟻ U+27FB | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟼ U+27FC | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟽ U+27FD | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟾ U+27FE | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⟿ U+27FF | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤀ U+2900 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤁ U+2901 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤂ U+2902 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤃ U+2903 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤄ U+2904 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤅ U+2905 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤆ U+2906 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤇ U+2907 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤈ U+2908 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤉ U+2909 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤊ U+290A | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤋ U+290B | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤌ U+290C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤍ U+290D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤎ U+290E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤏ U+290F | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤐ U+2910 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤑ U+2911 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤒ U+2912 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤓ U+2913 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤔ U+2914 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤕ U+2915 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤖ U+2916 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤗ U+2917 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤘ U+2918 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤙ U+2919 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤚ U+291A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤛ U+291B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤜ U+291C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤝ U+291D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤞ U+291E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤟ U+291F | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤠ U+2920 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤴ U+2934 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤵ U+2935 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤶ U+2936 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⤷ U+2937 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥂ U+2942 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥃ U+2943 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥄ U+2944 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥅ U+2945 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥆ U+2946 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥇ U+2947 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥈ U+2948 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥉ U+2949 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥊ U+294A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥋ U+294B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥌ U+294C | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥍ U+294D | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥎ U+294E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥏ U+294F | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥐ U+2950 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥑ U+2951 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥒ U+2952 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥓ U+2953 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥔ U+2954 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥕ U+2955 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥖ U+2956 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥗ U+2957 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥘ U+2958 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥙ U+2959 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥚ U+295A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥛ U+295B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥜ U+295C | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥝ U+295D | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥞ U+295E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥟ U+295F | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥠ U+2960 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥡ U+2961 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥢ U+2962 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥣ U+2963 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥤ U+2964 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥥ U+2965 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥦ U+2966 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥧ U+2967 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥨ U+2968 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥩ U+2969 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥪ U+296A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥫ U+296B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥬ U+296C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥭ U+296D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥮ U+296E | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥯ U+296F | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥰ U+2970 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥱ U+2971 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥲ U+2972 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥳ U+2973 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥴ U+2974 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥵ U+2975 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥼ U+297C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥽ U+297D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥾ U+297E | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⥿ U+297F | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬄ U+2B04 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬅ U+2B05 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬆ U+2B06 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬇ U+2B07 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬌ U+2B0C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬍ U+2B0D | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬎ U+2B0E | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬏ U+2B0F | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬐ U+2B10 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬑ U+2B11 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬰ U+2B30 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬱ U+2B31 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬲ U+2B32 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬳ U+2B33 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬴ U+2B34 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬵ U+2B35 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬶ U+2B36 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬷ U+2B37 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬸ U+2B38 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬹ U+2B39 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬺ U+2B3A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬻ U+2B3B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬼ U+2B3C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬽ U+2B3D | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⬾ U+2B3E | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭀ U+2B40 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭁ U+2B41 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭂ U+2B42 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭃ U+2B43 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭄ U+2B44 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭅ U+2B45 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭆ U+2B46 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭇ U+2B47 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭈ U+2B48 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭉ U+2B49 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭊ U+2B4A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭋ U+2B4B | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭌ U+2B4C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭠ U+2B60 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭡ U+2B61 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭢ U+2B62 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭣ U+2B63 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭤ U+2B64 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭥ U+2B65 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭪ U+2B6A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭫ U+2B6B | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭬ U+2B6C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭭ U+2B6D | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭰ U+2B70 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭱ U+2B71 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭲ U+2B72 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭳ U+2B73 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭺ U+2B7A | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭻ U+2B7B | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭼ U+2B7C | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⭽ U+2B7D | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮀ U+2B80 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮁ U+2B81 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮂ U+2B82 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮃ U+2B83 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮄ U+2B84 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮅ U+2B85 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮆ U+2B86 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮇ U+2B87 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮕ U+2B95 | inline | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮠ U+2BA0 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮡ U+2BA1 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮢ U+2BA2 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮣ U+2BA3 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮤ U+2BA4 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮥ U+2BA5 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮦ U+2BA6 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮧ U+2BA7 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮨ U+2BA8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮩ U+2BA9 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮪ U+2BAA | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮫ U+2BAB | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮬ U+2BAC | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮭ U+2BAD | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮮ U+2BAE | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮯ U+2BAF | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
⮸ U+2BB8 | block | infix | 0.2777777777777778em | 0.2777777777777778em | stretchy |
+ U+002B | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
- U+002D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
/ U+002F | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
± U+00B1 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
÷ U+00F7 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⁄ U+2044 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
− U+2212 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∓ U+2213 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∔ U+2214 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∕ U+2215 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∖ U+2216 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∧ U+2227 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∨ U+2228 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∩ U+2229 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∪ U+222A | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∶ U+2236 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
∸ U+2238 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊌ U+228C | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊍ U+228D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊎ U+228E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊓ U+2293 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊔ U+2294 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊕ U+2295 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊖ U+2296 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊘ U+2298 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊝ U+229D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊞ U+229E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊟ U+229F | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊻ U+22BB | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊼ U+22BC | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⊽ U+22BD | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⋎ U+22CE | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⋏ U+22CF | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⋒ U+22D2 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⋓ U+22D3 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
➕ U+2795 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
➖ U+2796 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
➗ U+2797 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⦸ U+29B8 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⦼ U+29BC | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧄ U+29C4 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧅ U+29C5 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧵ U+29F5 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧶ U+29F6 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧷ U+29F7 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧸ U+29F8 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧹ U+29F9 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧺ U+29FA | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⧻ U+29FB | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨟ U+2A1F | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨠ U+2A20 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨡ U+2A21 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨢ U+2A22 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨣ U+2A23 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨤ U+2A24 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨥ U+2A25 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨦ U+2A26 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨧ U+2A27 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨨ U+2A28 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨩ U+2A29 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨪ U+2A2A | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨫ U+2A2B | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨬ U+2A2C | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨭ U+2A2D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨮ U+2A2E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨸ U+2A38 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨹ U+2A39 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨺ U+2A3A | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⨾ U+2A3E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩀ U+2A40 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩁ U+2A41 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩂ U+2A42 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩃ U+2A43 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩄ U+2A44 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩅ U+2A45 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩆ U+2A46 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩇ U+2A47 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩈ U+2A48 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩉ U+2A49 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩊ U+2A4A | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩋ U+2A4B | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩌ U+2A4C | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩍ U+2A4D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩎ U+2A4E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩏ U+2A4F | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩑ U+2A51 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩒ U+2A52 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩓ U+2A53 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩔ U+2A54 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩕ U+2A55 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩖ U+2A56 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩗ U+2A57 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩘ U+2A58 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩙ U+2A59 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩚ U+2A5A | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩛ U+2A5B | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩜ U+2A5C | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩝ U+2A5D | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩞ U+2A5E | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩟ U+2A5F | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩠ U+2A60 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩡ U+2A61 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩢ U+2A62 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⩣ U+2A63 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⫛ U+2ADB | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⫶ U+2AF6 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⫻ U+2AFB | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
⫽ U+2AFD | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
String && U+0026 U+0026 | block | infix | 0.2222222222222222em | 0.2222222222222222em | N/A |
% U+0025 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
* U+002A | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
. U+002E | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
? U+003F | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
@ U+0040 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
^ U+005E | inline | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
· U+00B7 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
× U+00D7 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
• U+2022 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⁃ U+2043 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
∗ U+2217 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
∘ U+2218 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
∙ U+2219 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
≀ U+2240 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊗ U+2297 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊙ U+2299 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊚ U+229A | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊛ U+229B | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊠ U+22A0 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊡ U+22A1 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⊺ U+22BA | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋄ U+22C4 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋅ U+22C5 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋆ U+22C6 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋇ U+22C7 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋉ U+22C9 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋊ U+22CA | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋋ U+22CB | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⋌ U+22CC | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⌅ U+2305 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⌆ U+2306 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⟋ U+27CB | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⟍ U+27CD | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧆ U+29C6 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧇ U+29C7 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧈ U+29C8 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧔ U+29D4 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧕ U+29D5 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧖ U+29D6 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧗ U+29D7 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⧢ U+29E2 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨝ U+2A1D | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨞ U+2A1E | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨯ U+2A2F | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨰ U+2A30 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨱ U+2A31 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨲ U+2A32 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨳ U+2A33 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨴ U+2A34 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨵ U+2A35 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨶ U+2A36 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨷ U+2A37 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨻ U+2A3B | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨼ U+2A3C | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨽ U+2A3D | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⨿ U+2A3F | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⩐ U+2A50 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⩤ U+2A64 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⩥ U+2A65 | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⫝̸ U+2ADC | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⫝ U+2ADD | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
⫾ U+2AFE | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
String ** U+002A U+002A | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
String <> U+003C U+003E | block | infix | 0.16666666666666666em | 0.16666666666666666em | N/A |
! U+0021 | block | prefix | 0 | 0 | N/A |
+ U+002B | block | prefix | 0 | 0 | N/A |
- U+002D | block | prefix | 0 | 0 | N/A |
¬ U+00AC | block | prefix | 0 | 0 | N/A |
± U+00B1 | block | prefix | 0 | 0 | N/A |
‘ U+2018 | block | prefix | 0 | 0 | fence |
“ U+201C | block | prefix | 0 | 0 | fence |
∀ U+2200 | block | prefix | 0 | 0 | N/A |
∁ U+2201 | block | prefix | 0 | 0 | N/A |
∃ U+2203 | block | prefix | 0 | 0 | N/A |
∄ U+2204 | block | prefix | 0 | 0 | N/A |
∇ U+2207 | block | prefix | 0 | 0 | N/A |
− U+2212 | block | prefix | 0 | 0 | N/A |
∓ U+2213 | block | prefix | 0 | 0 | N/A |
∟ U+221F | block | prefix | 0 | 0 | N/A |
∠ U+2220 | block | prefix | 0 | 0 | N/A |
∡ U+2221 | block | prefix | 0 | 0 | N/A |
∢ U+2222 | block | prefix | 0 | 0 | N/A |
∴ U+2234 | block | prefix | 0 | 0 | N/A |
∵ U+2235 | block | prefix | 0 | 0 | N/A |
∼ U+223C | block | prefix | 0 | 0 | N/A |
⊾ U+22BE | block | prefix | 0 | 0 | N/A |
⊿ U+22BF | block | prefix | 0 | 0 | N/A |
⌐ U+2310 | block | prefix | 0 | 0 | N/A |
⌙ U+2319 | block | prefix | 0 | 0 | N/A |
➕ U+2795 | block | prefix | 0 | 0 | N/A |
➖ U+2796 | block | prefix | 0 | 0 | N/A |
⟀ U+27C0 | block | prefix | 0 | 0 | N/A |
⦛ U+299B | block | prefix | 0 | 0 | N/A |
⦜ U+299C | block | prefix | 0 | 0 | N/A |
⦝ U+299D | block | prefix | 0 | 0 | N/A |
⦞ U+299E | block | prefix | 0 | 0 | N/A |
⦟ U+299F | block | prefix | 0 | 0 | N/A |
⦠ U+29A0 | block | prefix | 0 | 0 | N/A |
⦡ U+29A1 | block | prefix | 0 | 0 | N/A |
⦢ U+29A2 | block | prefix | 0 | 0 | N/A |
⦣ U+29A3 | block | prefix | 0 | 0 | N/A |
⦤ U+29A4 | block | prefix | 0 | 0 | N/A |
⦥ U+29A5 | block | prefix | 0 | 0 | N/A |
⦦ U+29A6 | block | prefix | 0 | 0 | N/A |
⦧ U+29A7 | block | prefix | 0 | 0 | N/A |
⦨ U+29A8 | block | prefix | 0 | 0 | N/A |
⦩ U+29A9 | block | prefix | 0 | 0 | N/A |
⦪ U+29AA | block | prefix | 0 | 0 | N/A |
⦫ U+29AB | block | prefix | 0 | 0 | N/A |
⦬ U+29AC | block | prefix | 0 | 0 | N/A |
⦭ U+29AD | block | prefix | 0 | 0 | N/A |
⦮ U+29AE | block | prefix | 0 | 0 | N/A |
⦯ U+29AF | block | prefix | 0 | 0 | N/A |
⫬ U+2AEC | block | prefix | 0 | 0 | N/A |
⫭ U+2AED | block | prefix | 0 | 0 | N/A |
String || U+007C U+007C | block | prefix | 0 | 0 | fence |
! U+0021 | block | postfix | 0 | 0 | N/A |
" U+0022 | block | postfix | 0 | 0 | N/A |
% U+0025 | block | postfix | 0 | 0 | N/A |
& U+0026 | block | postfix | 0 | 0 | N/A |
' U+0027 | block | postfix | 0 | 0 | N/A |
` U+0060 | block | postfix | 0 | 0 | N/A |
¨ U+00A8 | block | postfix | 0 | 0 | N/A |
° U+00B0 | block | postfix | 0 | 0 | N/A |
² U+00B2 | block | postfix | 0 | 0 | N/A |
³ U+00B3 | block | postfix | 0 | 0 | N/A |
´ U+00B4 | block | postfix | 0 | 0 | N/A |
¸ U+00B8 | block | postfix | 0 | 0 | N/A |
¹ U+00B9 | block | postfix | 0 | 0 | N/A |
ˊ U+02CA | block | postfix | 0 | 0 | N/A |
ˋ U+02CB | block | postfix | 0 | 0 | N/A |
˘ U+02D8 | block | postfix | 0 | 0 | N/A |
˙ U+02D9 | block | postfix | 0 | 0 | N/A |
˚ U+02DA | block | postfix | 0 | 0 | N/A |
˝ U+02DD | block | postfix | 0 | 0 | N/A |
̑ U+0311 | block | postfix | 0 | 0 | N/A |
’ U+2019 | block | postfix | 0 | 0 | fence |
‚ U+201A | block | postfix | 0 | 0 | N/A |
‛ U+201B | block | postfix | 0 | 0 | N/A |
” U+201D | block | postfix | 0 | 0 | fence |
„ U+201E | block | postfix | 0 | 0 | N/A |
‟ U+201F | block | postfix | 0 | 0 | N/A |
′ U+2032 | block | postfix | 0 | 0 | N/A |
″ U+2033 | block | postfix | 0 | 0 | N/A |
‴ U+2034 | block | postfix | 0 | 0 | N/A |
‵ U+2035 | block | postfix | 0 | 0 | N/A |
‶ U+2036 | block | postfix | 0 | 0 | N/A |
‷ U+2037 | block | postfix | 0 | 0 | N/A |
⁗ U+2057 | block | postfix | 0 | 0 | N/A |
⃛ U+20DB | block | postfix | 0 | 0 | N/A |
⃜ U+20DC | block | postfix | 0 | 0 | N/A |
⏍ U+23CD | block | postfix | 0 | 0 | N/A |
String !! U+0021 U+0021 | block | postfix | 0 | 0 | N/A |
String ++ U+002B U+002B | block | postfix | 0 | 0 | N/A |
String -- U+002D U+002D | block | postfix | 0 | 0 | N/A |
String || U+007C U+007C | block | postfix | 0 | 0 | fence |
( U+0028 | block | prefix | 0 | 0 | stretchy symmetric fence |
[ U+005B | block | prefix | 0 | 0 | stretchy symmetric fence |
{ U+007B | block | prefix | 0 | 0 | stretchy symmetric fence |
| U+007C | block | prefix | 0 | 0 | stretchy symmetric fence |
‖ U+2016 | block | prefix | 0 | 0 | stretchy symmetric fence |
⌈ U+2308 | block | prefix | 0 | 0 | stretchy symmetric fence |
⌊ U+230A | block | prefix | 0 | 0 | stretchy symmetric fence |
〈 U+2329 | block | prefix | 0 | 0 | stretchy symmetric fence |
❲ U+2772 | block | prefix | 0 | 0 | stretchy symmetric fence |
⟦ U+27E6 | block | prefix | 0 | 0 | stretchy symmetric fence |
⟨ U+27E8 | block | prefix | 0 | 0 | stretchy symmetric fence |
⟪ U+27EA | block | prefix | 0 | 0 | stretchy symmetric fence |
⟬ U+27EC | block | prefix | 0 | 0 | stretchy symmetric fence |
⟮ U+27EE | block | prefix | 0 | 0 | stretchy symmetric fence |
⦀ U+2980 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦃ U+2983 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦅ U+2985 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦇ U+2987 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦉ U+2989 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦋ U+298B | block | prefix | 0 | 0 | stretchy symmetric fence |
⦍ U+298D | block | prefix | 0 | 0 | stretchy symmetric fence |
⦏ U+298F | block | prefix | 0 | 0 | stretchy symmetric fence |
⦑ U+2991 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦓ U+2993 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦕ U+2995 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦗ U+2997 | block | prefix | 0 | 0 | stretchy symmetric fence |
⦙ U+2999 | block | prefix | 0 | 0 | stretchy symmetric fence |
⧘ U+29D8 | block | prefix | 0 | 0 | stretchy symmetric fence |
⧚ U+29DA | block | prefix | 0 | 0 | stretchy symmetric fence |
⧼ U+29FC | block | prefix | 0 | 0 | stretchy symmetric fence |
) U+0029 | block | postfix | 0 | 0 | stretchy symmetric fence |
] U+005D | block | postfix | 0 | 0 | stretchy symmetric fence |
| U+007C | block | postfix | 0 | 0 | stretchy symmetric fence |
} U+007D | block | postfix | 0 | 0 | stretchy symmetric fence |
‖ U+2016 | block | postfix | 0 | 0 | stretchy symmetric fence |
⌉ U+2309 | block | postfix | 0 | 0 | stretchy symmetric fence |
⌋ U+230B | block | postfix | 0 | 0 | stretchy symmetric fence |
〉 U+232A | block | postfix | 0 | 0 | stretchy symmetric fence |
❳ U+2773 | block | postfix | 0 | 0 | stretchy symmetric fence |
⟧ U+27E7 | block | postfix | 0 | 0 | stretchy symmetric fence |
⟩ U+27E9 | block | postfix | 0 | 0 | stretchy symmetric fence |
⟫ U+27EB | block | postfix | 0 | 0 | stretchy symmetric fence |
⟭ U+27ED | block | postfix | 0 | 0 | stretchy symmetric fence |
⟯ U+27EF | block | postfix | 0 | 0 | stretchy symmetric fence |
⦀ U+2980 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦄ U+2984 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦆ U+2986 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦈ U+2988 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦊ U+298A | block | postfix | 0 | 0 | stretchy symmetric fence |
⦌ U+298C | block | postfix | 0 | 0 | stretchy symmetric fence |
⦎ U+298E | block | postfix | 0 | 0 | stretchy symmetric fence |
⦐ U+2990 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦒ U+2992 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦔ U+2994 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦖ U+2996 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦘ U+2998 | block | postfix | 0 | 0 | stretchy symmetric fence |
⦙ U+2999 | block | postfix | 0 | 0 | stretchy symmetric fence |
⧙ U+29D9 | block | postfix | 0 | 0 | stretchy symmetric fence |
⧛ U+29DB | block | postfix | 0 | 0 | stretchy symmetric fence |
⧽ U+29FD | block | postfix | 0 | 0 | stretchy symmetric fence |
∫ U+222B | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∬ U+222C | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∭ U+222D | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∮ U+222E | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∯ U+222F | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∰ U+2230 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∱ U+2231 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∲ U+2232 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
∳ U+2233 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨋ U+2A0B | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨌ U+2A0C | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨍ U+2A0D | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨎ U+2A0E | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨏ U+2A0F | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨐ U+2A10 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨑ U+2A11 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨒ U+2A12 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨓ U+2A13 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨔ U+2A14 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨕ U+2A15 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨖ U+2A16 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨗ U+2A17 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨘ U+2A18 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨙ U+2A19 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨚ U+2A1A | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨛ U+2A1B | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
⨜ U+2A1C | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop |
^ U+005E | inline | postfix | 0 | 0 | stretchy |
_ U+005F | inline | postfix | 0 | 0 | stretchy |
~ U+007E | inline | postfix | 0 | 0 | stretchy |
¯ U+00AF | inline | postfix | 0 | 0 | stretchy |
ˆ U+02C6 | inline | postfix | 0 | 0 | stretchy |
ˇ U+02C7 | inline | postfix | 0 | 0 | stretchy |
ˉ U+02C9 | inline | postfix | 0 | 0 | stretchy |
ˍ U+02CD | inline | postfix | 0 | 0 | stretchy |
˜ U+02DC | inline | postfix | 0 | 0 | stretchy |
˷ U+02F7 | inline | postfix | 0 | 0 | stretchy |
̂ U+0302 | inline | postfix | 0 | 0 | stretchy |
‾ U+203E | inline | postfix | 0 | 0 | stretchy |
⌢ U+2322 | inline | postfix | 0 | 0 | stretchy |
⌣ U+2323 | inline | postfix | 0 | 0 | stretchy |
⎴ U+23B4 | inline | postfix | 0 | 0 | stretchy |
⎵ U+23B5 | inline | postfix | 0 | 0 | stretchy |
⏜ U+23DC | inline | postfix | 0 | 0 | stretchy |
⏝ U+23DD | inline | postfix | 0 | 0 | stretchy |
⏞ U+23DE | inline | postfix | 0 | 0 | stretchy |
⏟ U+23DF | inline | postfix | 0 | 0 | stretchy |
⏠ U+23E0 | inline | postfix | 0 | 0 | stretchy |
⏡ U+23E1 | inline | postfix | 0 | 0 | stretchy |
𞻰 U+1EEF0 | inline | postfix | 0 | 0 | stretchy |
𞻱 U+1EEF1 | inline | postfix | 0 | 0 | stretchy |
∏ U+220F | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
∐ U+2210 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
∑ U+2211 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⋀ U+22C0 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⋁ U+22C1 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⋂ U+22C2 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⋃ U+22C3 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨀ U+2A00 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨁ U+2A01 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨂ U+2A02 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨃ U+2A03 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨄ U+2A04 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨅ U+2A05 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨆ U+2A06 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨇ U+2A07 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨈ U+2A08 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨉ U+2A09 | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨊ U+2A0A | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨝ U+2A1D | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⨞ U+2A1E | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⫼ U+2AFC | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
⫿ U+2AFF | block | prefix | 0.16666666666666666em | 0.16666666666666666em | symmetric largeop movablelimits |
\ U+005C | block | infix | 0 | 0 | N/A |
_ U+005F | inline | infix | 0 | 0 | N/A |
U+2061 | block | infix | 0 | 0 | N/A |
U+2062 | block | infix | 0 | 0 | N/A |
U+2063 | block | infix | 0 | 0 | separator |
U+2064 | block | infix | 0 | 0 | N/A |
∆ U+2206 | block | infix | 0 | 0 | N/A |
ⅅ U+2145 | block | prefix | 0.16666666666666666em | 0 | N/A |
ⅆ U+2146 | block | prefix | 0.16666666666666666em | 0 | N/A |
∂ U+2202 | block | prefix | 0.16666666666666666em | 0 | N/A |
√ U+221A | block | prefix | 0.16666666666666666em | 0 | N/A |
∛ U+221B | block | prefix | 0.16666666666666666em | 0 | N/A |
∜ U+221C | block | prefix | 0.16666666666666666em | 0 | N/A |
, U+002C | block | infix | 0 | 0.16666666666666666em | separator |
: U+003A | block | infix | 0 | 0.16666666666666666em | N/A |
; U+003B | block | infix | 0 | 0.16666666666666666em | separator |
This section is non-normative.
+ ++ The following table gives mappings between spacing and non spacing + characters when used in MathML accent constructs. +
+Non Combining | Style | Combining | ||
---|---|---|---|---|
U+002B | plus sign | below | U+031F | combining plus sign below |
U+002D | hyphen-minus | above | U+0305 | combining overline |
U+002D | hyphen-minus | below | U+0320 | combining minus sign below |
U+002D | hyphen-minus | below | U+0332 | combining low line |
U+002E | full stop | above | U+0307 | combining dot above |
U+002E | full stop | below | U+0323 | combining dot below |
U+005E | circumflex accent | above | U+0302 | combining circumflex accent |
U+005E | circumflex accent | below | U+032D | combining circumflex accent below |
U+005F | low line | below | U+0332 | combining low line |
U+0060 | grave accent | above | U+0300 | combining grave accent |
U+0060 | grave accent | below | U+0316 | combining grave accent below |
U+007E | tilde | above | U+0303 | combining tilde |
U+007E | tilde | below | U+0330 | combining tilde below |
U+00A8 | diaeresis | above | U+0308 | combining diaeresis |
U+00A8 | diaeresis | below | U+0324 | combining diaeresis below |
U+00AF | macron | above | U+0304 | combining macron |
U+00AF | macron | above | U+0305 | combining overline |
U+00B4 | acute accent | above | U+0301 | combining acute accent |
U+00B4 | acute accent | below | U+0317 | combining acute accent below |
U+00B8 | cedilla | below | U+0327 | combining cedilla |
U+02C6 | modifier letter circumflex accent | above | U+0302 | combining circumflex accent |
U+02C7 | caron | above | U+030C | combining caron |
U+02C7 | caron | below | U+032C | combining caron below |
U+02D8 | breve | above | U+0306 | combining breve |
U+02D8 | breve | below | U+032E | combining breve below |
U+02D9 | dot above | above | U+0307 | combining dot above |
U+02D9 | dot above | below | U+0323 | combining dot below |
U+02DB | ogonek | below | U+0328 | combining ogonek |
U+02DC | small tilde | above | U+0303 | combining tilde |
U+02DC | small tilde | below | U+0330 | combining tilde below |
U+02DD | double acute accent | above | U+030B | combining double acute accent |
U+203E | overline | above | U+0305 | combining overline |
U+2190 | leftwards arrow | above | U+20D6 | |
U+2192 | rightwards arrow | above | U+20D7 | combining right arrow above |
U+2192 | rightwards arrow | above | U+20EF | combining right arrow below |
U+2212 | minus sign | above | U+0305 | combining overline |
U+2212 | minus sign | below | U+0332 | combining low line |
U+27F6 | long rightwards arrow | above | U+20D7 | combining right arrow above |
U+27F6 | long rightwards arrow | above | U+20EF | combining right arrow below |
Combining | Style | Non Combining | ||
---|---|---|---|---|
U+0300 | combining grave accent | above | U+0060 | grave accent |
U+0301 | combining acute accent | above | U+00B4 | acute accent |
U+0302 | combining circumflex accent | above | U+005E | circumflex accent |
U+0302 | combining circumflex accent | above | U+02C6 | modifier letter circumflex accent |
U+0303 | combining tilde | above | U+007E | tilde |
U+0303 | combining tilde | above | U+02DC | small tilde |
U+0304 | combining macron | above | U+00AF | macron |
U+0305 | combining overline | above | U+002D | hyphen-minus |
U+0305 | combining overline | above | U+00AF | macron |
U+0305 | combining overline | above | U+203E | overline |
U+0305 | combining overline | above | U+2212 | minus sign |
U+0306 | combining breve | above | U+02D8 | breve |
U+0307 | combining dot above | above | U+02E | |
U+0307 | combining dot above | above | U+002E | full stop |
U+0307 | combining dot above | above | U+02D9 | dot above |
U+0308 | combining diaeresis | above | U+00A8 | diaeresis |
U+030B | combining double acute accent | above | U+02DD | double acute accent |
U+030C | combining caron | above | U+02C7 | caron |
U+0312 | combining turned comma above | above | U+0B8 | |
U+0316 | combining grave accent below | below | U+0060 | grave accent |
U+0317 | combining acute accent below | below | U+00B4 | acute accent |
U+031F | combining plus sign below | below | U+002B | plus sign |
U+0320 | combining minus sign below | below | U+002D | hyphen-minus |
U+0323 | combining dot below | below | U+002E | full stop |
U+0323 | combining dot below | below | U+02D9 | dot above |
U+0324 | combining diaeresis below | below | U+00A8 | diaeresis |
U+0327 | combining cedilla | below | U+00B8 | cedilla |
U+0328 | combining ogonek | below | U+02DB | ogonek |
U+032C | combining caron below | below | U+02C7 | caron |
U+032D | combining circumflex accent below | below | U+005E | circumflex accent |
U+032E | combining breve below | below | U+02D8 | breve |
U+0330 | combining tilde below | below | U+007E | tilde |
U+0330 | combining tilde below | below | U+02DC | small tilde |
U+0332 | combining low line | below | U+002D | hyphen-minus |
U+0332 | combining low line | below | U+005F | low line |
U+0332 | combining low line | below | U+2212 | minus sign |
U+0338 | combining long solidus overlay | over | U+02F | |
U+20D7 | combining right arrow above | above | U+2192 | rightwards arrow |
U+20D7 | combining right arrow above | above | U+27F6 | long rightwards arrow |
U+20EF | combining right arrow below | above | U+2192 | rightwards arrow |
U+20EF | combining right arrow below | above | U+27F6 | long rightwards arrow |
This section is non-normative.
+ +
+ The following table provides fallback that user agents may use for
+ stretching a given base character when the font does not
+ provide a MATH.MathVariants
table.
+ The algorithms of
+ 5.3 Size variants for operators (MathVariants
)
+ work the same except with some adjustments:
+
MathVariants.horizGlyphConstructionOffsets[]
item;
+ if it is vertical it corresponds to
+ a MathVariants.vertGlyphConstructionOffsets[]
item.
+ MathGlyphConstruction.mathGlyphVariantRecord
is
+ always empty.
+ MathVariants.minConnectorOverlap
,
+ GlyphPartRecord.startConnectorLength
and
+ GlyphPartRecord.endConnectorLength
+ are treated as 0.
+ MathGlyphConstruction.GlyphAssembly.partRecords
is built
+ from each table row as follows:
+ Base Character | +Glyph Construction | +Extender Character | +Bottom/Left Character | +Middle Character | +Top/Right Character | +
---|---|---|---|---|---|
U+0028 ( | +Vertical | +U+239C ⎜ | +U+239D ⎝ | +N/A | +U+239B ⎛ | +
U+0029 ) | +Vertical | +U+239F ⎟ | +U+23A0 ⎠ | +N/A | +U+239E ⎞ | +
U+003D = | +Horizontal | +U+003D = | +U+003D = | +N/A | +N/A | +
U+005B [ | +Vertical | +U+23A2 ⎢ | +U+23A3 ⎣ | +N/A | +U+23A1 ⎡ | +
U+005D ] | +Vertical | +U+23A5 ⎥ | +U+23A6 ⎦ | +N/A | +U+23A4 ⎤ | +
U+005F _ | +Horizontal | +U+005F _ | +U+005F _ | +N/A | +N/A | +
U+007B { | +Vertical | +U+23AA ⎪ | +U+23A9 ⎩ | +U+23A8 ⎨ | +U+23A7 ⎧ | +
U+007C | | +Vertical | +U+007C | | +U+007C | | +N/A | +N/A | +
U+007D } | +Vertical | +U+23AA ⎪ | +U+23AD ⎭ | +U+23AC ⎬ | +U+23AB ⎫ | +
U+00AF ¯ | +Horizontal | +U+00AF ¯ | +U+00AF ¯ | +N/A | +N/A | +
U+2016 ‖ | +Vertical | +U+2016 ‖ | +U+2016 ‖ | +N/A | +N/A | +
U+203E ‾ | +Horizontal | +U+203E ‾ | +U+203E ‾ | +N/A | +N/A | +
U+2190 ← | +Horizontal | +U+23AF ⎯ | +U+2190 ← | +N/A | +U+23AF ⎯ | +
U+2191 ↑ | +Vertical | +U+23D0 ⏐ | +U+23D0 ⏐ | +N/A | +U+2191 ↑ | +
U+2192 → | +Horizontal | +U+23AF ⎯ | +U+23AF ⎯ | +N/A | +U+2192 → | +
U+2193 ↓ | +Vertical | +U+23D0 ⏐ | +U+2193 ↓ | +N/A | +U+23D0 ⏐ | +
U+2194 ↔ | +Horizontal | +U+23AF ⎯ | +U+2190 ← | +N/A | +U+2192 → | +
U+2195 ↕ | +Vertical | +U+23D0 ⏐ | +U+2193 ↓ | +N/A | +U+2191 ↑ | +
U+21A4 ↤ | +Horizontal | +U+23AF ⎯ | +U+2190 ← | +N/A | +U+22A3 ⊣ | +
U+21A6 ↦ | +Horizontal | +U+23AF ⎯ | +U+22A2 ⊢ | +N/A | +U+2192 → | +
U+21BC ↼ | +Horizontal | +U+23AF ⎯ | +U+21BC ↼ | +N/A | +U+23AF ⎯ | +
U+21BD ↽ | +Horizontal | +U+23AF ⎯ | +U+21BD ↽ | +N/A | +U+23AF ⎯ | +
U+21C0 ⇀ | +Horizontal | +U+23AF ⎯ | +U+23AF ⎯ | +N/A | +U+21C0 ⇀ | +
U+21C1 ⇁ | +Horizontal | +U+23AF ⎯ | +U+23AF ⎯ | +N/A | +U+21C1 ⇁ | +
U+2223 ∣ | +Vertical | +U+2223 ∣ | +U+2223 ∣ | +N/A | +N/A | +
U+2225 ∥ | +Vertical | +U+2225 ∥ | +U+2225 ∥ | +N/A | +N/A | +
U+2308 ⌈ | +Vertical | +U+23A2 ⎢ | +U+23A2 ⎢ | +N/A | +U+23A1 ⎡ | +
U+2309 ⌉ | +Vertical | +U+23A5 ⎥ | +U+23A5 ⎥ | +N/A | +U+23A4 ⎤ | +
U+230A ⌊ | +Vertical | +U+23A2 ⎢ | +U+23A3 ⎣ | +N/A | +N/A | +
U+230B ⌋ | +Vertical | +U+23A5 ⎥ | +U+23A6 ⎦ | +N/A | +N/A | +
U+23B0 ⎰ | +Vertical | +U+23AA ⎪ | +U+23AD ⎭ | +N/A | +U+23A7 ⎧ | +
U+23B1 ⎱ | +Vertical | +U+23AA ⎪ | +U+23A9 ⎩ | +N/A | +U+23AB ⎫ | +
U+27F5 ⟵ | +Horizontal | +U+23AF ⎯ | +U+2190 ← | +N/A | +U+23AF ⎯ | +
U+27F6 ⟶ | +Horizontal | +U+23AF ⎯ | +U+23AF ⎯ | +N/A | +U+2192 → | +
U+27F7 ⟷ | +Horizontal | +U+23AF ⎯ | +U+2190 ← | +N/A | +U+2192 → | +
U+294E ⥎ | +Horizontal | +U+23AF ⎯ | +U+21BC ↼ | +N/A | +U+21C0 ⇀ | +
U+2950 ⥐ | +Horizontal | +U+23AF ⎯ | +U+21BD ↽ | +N/A | +U+21C1 ⇁ | +
U+295A ⥚ | +Horizontal | +U+23AF ⎯ | +U+21BC ↼ | +N/A | +U+22A3 ⊣ | +
U+295B ⥛ | +Horizontal | +U+23AF ⎯ | +U+22A2 ⊢ | +N/A | +U+21C0 ⇀ | +
U+295E ⥞ | +Horizontal | +U+23AF ⎯ | +U+21BD ↽ | +N/A | +U+22A3 ⊣ | +
U+295F ⥟ | +Horizontal | +U+23AF ⎯ | +U+22A2 ⊢ | +N/A | +U+21C1 ⇁ | +
+ The following tables enumerate the mathematical alphanumeric symbols + with form bold, italic, fraktur, monospace, double-struck etc + that are available in Unicode. + For each of them, the character in its normal form is provided as + well as the difference between the code points of the transformed and + original characters. +
+It is sometimes needed to distinguish between
+ Chancery and Roundhand style for MATHEMATICAL SCRIPT characters.
+ These are notably used in LaTeX for the
+ \mathcal
and \mathscr
commands.
One way to do that is to rely on
+ Chapter 23.4 Variation Selectors of
+ Unicode which describes a way to
+ specify selection of particular glyph variants [UNICODE].
+ Indeed, the
+ StandardizedVariants.txt
file from the
+ Unicode Character Database indicates that variant selectors
+ U+FE00 and U+FE01 can be used on capital script to specify
+ Chancery and Roundhand respectively.
Alternatively, some
+ mathematical fonts rely on salt
or
+ ssXY
properties from [OPEN-FONT-FORMAT]
+ to provide both styles. Page authors may use the
+ font-variant-alternates property with corresponding OpenType font features
+ to access these glyphs.
This section is non-normative.
+ +Original | bold-script | Δcode point |
---|---|---|
A U+0041 | 𝓐 U+1D4D0 | 1D48F |
B U+0042 | 𝓑 U+1D4D1 | 1D48F |
C U+0043 | 𝓒 U+1D4D2 | 1D48F |
D U+0044 | 𝓓 U+1D4D3 | 1D48F |
E U+0045 | 𝓔 U+1D4D4 | 1D48F |
F U+0046 | 𝓕 U+1D4D5 | 1D48F |
G U+0047 | 𝓖 U+1D4D6 | 1D48F |
H U+0048 | 𝓗 U+1D4D7 | 1D48F |
I U+0049 | 𝓘 U+1D4D8 | 1D48F |
J U+004A | 𝓙 U+1D4D9 | 1D48F |
K U+004B | 𝓚 U+1D4DA | 1D48F |
L U+004C | 𝓛 U+1D4DB | 1D48F |
M U+004D | 𝓜 U+1D4DC | 1D48F |
N U+004E | 𝓝 U+1D4DD | 1D48F |
O U+004F | 𝓞 U+1D4DE | 1D48F |
P U+0050 | 𝓟 U+1D4DF | 1D48F |
Q U+0051 | 𝓠 U+1D4E0 | 1D48F |
R U+0052 | 𝓡 U+1D4E1 | 1D48F |
S U+0053 | 𝓢 U+1D4E2 | 1D48F |
T U+0054 | 𝓣 U+1D4E3 | 1D48F |
U U+0055 | 𝓤 U+1D4E4 | 1D48F |
V U+0056 | 𝓥 U+1D4E5 | 1D48F |
W U+0057 | 𝓦 U+1D4E6 | 1D48F |
X U+0058 | 𝓧 U+1D4E7 | 1D48F |
Y U+0059 | 𝓨 U+1D4E8 | 1D48F |
Z U+005A | 𝓩 U+1D4E9 | 1D48F |
a U+0061 | 𝓪 U+1D4EA | 1D489 |
b U+0062 | 𝓫 U+1D4EB | 1D489 |
c U+0063 | 𝓬 U+1D4EC | 1D489 |
d U+0064 | 𝓭 U+1D4ED | 1D489 |
e U+0065 | 𝓮 U+1D4EE | 1D489 |
f U+0066 | 𝓯 U+1D4EF | 1D489 |
g U+0067 | 𝓰 U+1D4F0 | 1D489 |
h U+0068 | 𝓱 U+1D4F1 | 1D489 |
i U+0069 | 𝓲 U+1D4F2 | 1D489 |
j U+006A | 𝓳 U+1D4F3 | 1D489 |
k U+006B | 𝓴 U+1D4F4 | 1D489 |
l U+006C | 𝓵 U+1D4F5 | 1D489 |
m U+006D | 𝓶 U+1D4F6 | 1D489 |
n U+006E | 𝓷 U+1D4F7 | 1D489 |
o U+006F | 𝓸 U+1D4F8 | 1D489 |
p U+0070 | 𝓹 U+1D4F9 | 1D489 |
q U+0071 | 𝓺 U+1D4FA | 1D489 |
r U+0072 | 𝓻 U+1D4FB | 1D489 |
s U+0073 | 𝓼 U+1D4FC | 1D489 |
t U+0074 | 𝓽 U+1D4FD | 1D489 |
u U+0075 | 𝓾 U+1D4FE | 1D489 |
v U+0076 | 𝓿 U+1D4FF | 1D489 |
w U+0077 | 𝔀 U+1D500 | 1D489 |
x U+0078 | 𝔁 U+1D501 | 1D489 |
y U+0079 | 𝔂 U+1D502 | 1D489 |
z U+007A | 𝔃 U+1D503 | 1D489 |
This section is non-normative.
+ +Original | bold-italic | Δcode point |
---|---|---|
A U+0041 | 𝑨 U+1D468 | 1D427 |
B U+0042 | 𝑩 U+1D469 | 1D427 |
C U+0043 | 𝑪 U+1D46A | 1D427 |
D U+0044 | 𝑫 U+1D46B | 1D427 |
E U+0045 | 𝑬 U+1D46C | 1D427 |
F U+0046 | 𝑭 U+1D46D | 1D427 |
G U+0047 | 𝑮 U+1D46E | 1D427 |
H U+0048 | 𝑯 U+1D46F | 1D427 |
I U+0049 | 𝑰 U+1D470 | 1D427 |
J U+004A | 𝑱 U+1D471 | 1D427 |
K U+004B | 𝑲 U+1D472 | 1D427 |
L U+004C | 𝑳 U+1D473 | 1D427 |
M U+004D | 𝑴 U+1D474 | 1D427 |
N U+004E | 𝑵 U+1D475 | 1D427 |
O U+004F | 𝑶 U+1D476 | 1D427 |
P U+0050 | 𝑷 U+1D477 | 1D427 |
Q U+0051 | 𝑸 U+1D478 | 1D427 |
R U+0052 | 𝑹 U+1D479 | 1D427 |
S U+0053 | 𝑺 U+1D47A | 1D427 |
T U+0054 | 𝑻 U+1D47B | 1D427 |
U U+0055 | 𝑼 U+1D47C | 1D427 |
V U+0056 | 𝑽 U+1D47D | 1D427 |
W U+0057 | 𝑾 U+1D47E | 1D427 |
X U+0058 | 𝑿 U+1D47F | 1D427 |
Y U+0059 | 𝒀 U+1D480 | 1D427 |
Z U+005A | 𝒁 U+1D481 | 1D427 |
a U+0061 | 𝒂 U+1D482 | 1D421 |
b U+0062 | 𝒃 U+1D483 | 1D421 |
c U+0063 | 𝒄 U+1D484 | 1D421 |
d U+0064 | 𝒅 U+1D485 | 1D421 |
e U+0065 | 𝒆 U+1D486 | 1D421 |
f U+0066 | 𝒇 U+1D487 | 1D421 |
g U+0067 | 𝒈 U+1D488 | 1D421 |
h U+0068 | 𝒉 U+1D489 | 1D421 |
i U+0069 | 𝒊 U+1D48A | 1D421 |
j U+006A | 𝒋 U+1D48B | 1D421 |
k U+006B | 𝒌 U+1D48C | 1D421 |
l U+006C | 𝒍 U+1D48D | 1D421 |
m U+006D | 𝒎 U+1D48E | 1D421 |
n U+006E | 𝒏 U+1D48F | 1D421 |
o U+006F | 𝒐 U+1D490 | 1D421 |
p U+0070 | 𝒑 U+1D491 | 1D421 |
q U+0071 | 𝒒 U+1D492 | 1D421 |
r U+0072 | 𝒓 U+1D493 | 1D421 |
s U+0073 | 𝒔 U+1D494 | 1D421 |
t U+0074 | 𝒕 U+1D495 | 1D421 |
u U+0075 | 𝒖 U+1D496 | 1D421 |
v U+0076 | 𝒗 U+1D497 | 1D421 |
w U+0077 | 𝒘 U+1D498 | 1D421 |
x U+0078 | 𝒙 U+1D499 | 1D421 |
y U+0079 | 𝒚 U+1D49A | 1D421 |
z U+007A | 𝒛 U+1D49B | 1D421 |
Α U+0391 | 𝜜 U+1D71C | 1D38B |
Β U+0392 | 𝜝 U+1D71D | 1D38B |
Γ U+0393 | 𝜞 U+1D71E | 1D38B |
Δ U+0394 | 𝜟 U+1D71F | 1D38B |
Ε U+0395 | 𝜠 U+1D720 | 1D38B |
Ζ U+0396 | 𝜡 U+1D721 | 1D38B |
Η U+0397 | 𝜢 U+1D722 | 1D38B |
Θ U+0398 | 𝜣 U+1D723 | 1D38B |
Ι U+0399 | 𝜤 U+1D724 | 1D38B |
Κ U+039A | 𝜥 U+1D725 | 1D38B |
Λ U+039B | 𝜦 U+1D726 | 1D38B |
Μ U+039C | 𝜧 U+1D727 | 1D38B |
Ν U+039D | 𝜨 U+1D728 | 1D38B |
Ξ U+039E | 𝜩 U+1D729 | 1D38B |
Ο U+039F | 𝜪 U+1D72A | 1D38B |
Π U+03A0 | 𝜫 U+1D72B | 1D38B |
Ρ U+03A1 | 𝜬 U+1D72C | 1D38B |
ϴ U+03F4 | 𝜭 U+1D72D | 1D339 |
Σ U+03A3 | 𝜮 U+1D72E | 1D38B |
Τ U+03A4 | 𝜯 U+1D72F | 1D38B |
Υ U+03A5 | 𝜰 U+1D730 | 1D38B |
Φ U+03A6 | 𝜱 U+1D731 | 1D38B |
Χ U+03A7 | 𝜲 U+1D732 | 1D38B |
Ψ U+03A8 | 𝜳 U+1D733 | 1D38B |
Ω U+03A9 | 𝜴 U+1D734 | 1D38B |
∇ U+2207 | 𝜵 U+1D735 | 1B52E |
α U+03B1 | 𝜶 U+1D736 | 1D385 |
β U+03B2 | 𝜷 U+1D737 | 1D385 |
γ U+03B3 | 𝜸 U+1D738 | 1D385 |
δ U+03B4 | 𝜹 U+1D739 | 1D385 |
ε U+03B5 | 𝜺 U+1D73A | 1D385 |
ζ U+03B6 | 𝜻 U+1D73B | 1D385 |
η U+03B7 | 𝜼 U+1D73C | 1D385 |
θ U+03B8 | 𝜽 U+1D73D | 1D385 |
ι U+03B9 | 𝜾 U+1D73E | 1D385 |
κ U+03BA | 𝜿 U+1D73F | 1D385 |
λ U+03BB | 𝝀 U+1D740 | 1D385 |
μ U+03BC | 𝝁 U+1D741 | 1D385 |
ν U+03BD | 𝝂 U+1D742 | 1D385 |
ξ U+03BE | 𝝃 U+1D743 | 1D385 |
ο U+03BF | 𝝄 U+1D744 | 1D385 |
π U+03C0 | 𝝅 U+1D745 | 1D385 |
ρ U+03C1 | 𝝆 U+1D746 | 1D385 |
ς U+03C2 | 𝝇 U+1D747 | 1D385 |
σ U+03C3 | 𝝈 U+1D748 | 1D385 |
τ U+03C4 | 𝝉 U+1D749 | 1D385 |
υ U+03C5 | 𝝊 U+1D74A | 1D385 |
φ U+03C6 | 𝝋 U+1D74B | 1D385 |
χ U+03C7 | 𝝌 U+1D74C | 1D385 |
ψ U+03C8 | 𝝍 U+1D74D | 1D385 |
ω U+03C9 | 𝝎 U+1D74E | 1D385 |
∂ U+2202 | 𝝏 U+1D74F | 1B54D |
ϵ U+03F5 | 𝝐 U+1D750 | 1D35B |
ϑ U+03D1 | 𝝑 U+1D751 | 1D380 |
ϰ U+03F0 | 𝝒 U+1D752 | 1D362 |
ϕ U+03D5 | 𝝓 U+1D753 | 1D37E |
ϱ U+03F1 | 𝝔 U+1D754 | 1D363 |
ϖ U+03D6 | 𝝕 U+1D755 | 1D37F |
This section is non-normative.
+ +Original | tailed | Δcode point |
---|---|---|
ج U+062C | 𞹂 U+1EE42 | 1E816 |
ح U+062D | 𞹇 U+1EE47 | 1E81A |
ي U+064A | 𞹉 U+1EE49 | 1E7FF |
ل U+0644 | 𞹋 U+1EE4B | 1E807 |
ن U+0646 | 𞹍 U+1EE4D | 1E807 |
س U+0633 | 𞹎 U+1EE4E | 1E81B |
ع U+0639 | 𞹏 U+1EE4F | 1E816 |
ص U+0635 | 𞹑 U+1EE51 | 1E81C |
ق U+0642 | 𞹒 U+1EE52 | 1E810 |
ش U+0634 | 𞹔 U+1EE54 | 1E820 |
خ U+062E | 𞹗 U+1EE57 | 1E829 |
ض U+0636 | 𞹙 U+1EE59 | 1E823 |
غ U+063A | 𞹛 U+1EE5B | 1E821 |
ں U+06BA | 𞹝 U+1EE5D | 1E7A3 |
ٯ U+066F | 𞹟 U+1EE5F | 1E7F0 |
This section is non-normative.
+ +Original | bold | Δcode point |
---|---|---|
A U+0041 | 𝐀 U+1D400 | 1D3BF |
B U+0042 | 𝐁 U+1D401 | 1D3BF |
C U+0043 | 𝐂 U+1D402 | 1D3BF |
D U+0044 | 𝐃 U+1D403 | 1D3BF |
E U+0045 | 𝐄 U+1D404 | 1D3BF |
F U+0046 | 𝐅 U+1D405 | 1D3BF |
G U+0047 | 𝐆 U+1D406 | 1D3BF |
H U+0048 | 𝐇 U+1D407 | 1D3BF |
I U+0049 | 𝐈 U+1D408 | 1D3BF |
J U+004A | 𝐉 U+1D409 | 1D3BF |
K U+004B | 𝐊 U+1D40A | 1D3BF |
L U+004C | 𝐋 U+1D40B | 1D3BF |
M U+004D | 𝐌 U+1D40C | 1D3BF |
N U+004E | 𝐍 U+1D40D | 1D3BF |
O U+004F | 𝐎 U+1D40E | 1D3BF |
P U+0050 | 𝐏 U+1D40F | 1D3BF |
Q U+0051 | 𝐐 U+1D410 | 1D3BF |
R U+0052 | 𝐑 U+1D411 | 1D3BF |
S U+0053 | 𝐒 U+1D412 | 1D3BF |
T U+0054 | 𝐓 U+1D413 | 1D3BF |
U U+0055 | 𝐔 U+1D414 | 1D3BF |
V U+0056 | 𝐕 U+1D415 | 1D3BF |
W U+0057 | 𝐖 U+1D416 | 1D3BF |
X U+0058 | 𝐗 U+1D417 | 1D3BF |
Y U+0059 | 𝐘 U+1D418 | 1D3BF |
Z U+005A | 𝐙 U+1D419 | 1D3BF |
a U+0061 | 𝐚 U+1D41A | 1D3B9 |
b U+0062 | 𝐛 U+1D41B | 1D3B9 |
c U+0063 | 𝐜 U+1D41C | 1D3B9 |
d U+0064 | 𝐝 U+1D41D | 1D3B9 |
e U+0065 | 𝐞 U+1D41E | 1D3B9 |
f U+0066 | 𝐟 U+1D41F | 1D3B9 |
g U+0067 | 𝐠 U+1D420 | 1D3B9 |
h U+0068 | 𝐡 U+1D421 | 1D3B9 |
i U+0069 | 𝐢 U+1D422 | 1D3B9 |
j U+006A | 𝐣 U+1D423 | 1D3B9 |
k U+006B | 𝐤 U+1D424 | 1D3B9 |
l U+006C | 𝐥 U+1D425 | 1D3B9 |
m U+006D | 𝐦 U+1D426 | 1D3B9 |
n U+006E | 𝐧 U+1D427 | 1D3B9 |
o U+006F | 𝐨 U+1D428 | 1D3B9 |
p U+0070 | 𝐩 U+1D429 | 1D3B9 |
q U+0071 | 𝐪 U+1D42A | 1D3B9 |
r U+0072 | 𝐫 U+1D42B | 1D3B9 |
s U+0073 | 𝐬 U+1D42C | 1D3B9 |
t U+0074 | 𝐭 U+1D42D | 1D3B9 |
u U+0075 | 𝐮 U+1D42E | 1D3B9 |
v U+0076 | 𝐯 U+1D42F | 1D3B9 |
w U+0077 | 𝐰 U+1D430 | 1D3B9 |
x U+0078 | 𝐱 U+1D431 | 1D3B9 |
y U+0079 | 𝐲 U+1D432 | 1D3B9 |
z U+007A | 𝐳 U+1D433 | 1D3B9 |
Α U+0391 | 𝚨 U+1D6A8 | 1D317 |
Β U+0392 | 𝚩 U+1D6A9 | 1D317 |
Γ U+0393 | 𝚪 U+1D6AA | 1D317 |
Δ U+0394 | 𝚫 U+1D6AB | 1D317 |
Ε U+0395 | 𝚬 U+1D6AC | 1D317 |
Ζ U+0396 | 𝚭 U+1D6AD | 1D317 |
Η U+0397 | 𝚮 U+1D6AE | 1D317 |
Θ U+0398 | 𝚯 U+1D6AF | 1D317 |
Ι U+0399 | 𝚰 U+1D6B0 | 1D317 |
Κ U+039A | 𝚱 U+1D6B1 | 1D317 |
Λ U+039B | 𝚲 U+1D6B2 | 1D317 |
Μ U+039C | 𝚳 U+1D6B3 | 1D317 |
Ν U+039D | 𝚴 U+1D6B4 | 1D317 |
Ξ U+039E | 𝚵 U+1D6B5 | 1D317 |
Ο U+039F | 𝚶 U+1D6B6 | 1D317 |
Π U+03A0 | 𝚷 U+1D6B7 | 1D317 |
Ρ U+03A1 | 𝚸 U+1D6B8 | 1D317 |
ϴ U+03F4 | 𝚹 U+1D6B9 | 1D2C5 |
Σ U+03A3 | 𝚺 U+1D6BA | 1D317 |
Τ U+03A4 | 𝚻 U+1D6BB | 1D317 |
Υ U+03A5 | 𝚼 U+1D6BC | 1D317 |
Φ U+03A6 | 𝚽 U+1D6BD | 1D317 |
Χ U+03A7 | 𝚾 U+1D6BE | 1D317 |
Ψ U+03A8 | 𝚿 U+1D6BF | 1D317 |
Ω U+03A9 | 𝛀 U+1D6C0 | 1D317 |
∇ U+2207 | 𝛁 U+1D6C1 | 1B4BA |
α U+03B1 | 𝛂 U+1D6C2 | 1D311 |
β U+03B2 | 𝛃 U+1D6C3 | 1D311 |
γ U+03B3 | 𝛄 U+1D6C4 | 1D311 |
δ U+03B4 | 𝛅 U+1D6C5 | 1D311 |
ε U+03B5 | 𝛆 U+1D6C6 | 1D311 |
ζ U+03B6 | 𝛇 U+1D6C7 | 1D311 |
η U+03B7 | 𝛈 U+1D6C8 | 1D311 |
θ U+03B8 | 𝛉 U+1D6C9 | 1D311 |
ι U+03B9 | 𝛊 U+1D6CA | 1D311 |
κ U+03BA | 𝛋 U+1D6CB | 1D311 |
λ U+03BB | 𝛌 U+1D6CC | 1D311 |
μ U+03BC | 𝛍 U+1D6CD | 1D311 |
ν U+03BD | 𝛎 U+1D6CE | 1D311 |
ξ U+03BE | 𝛏 U+1D6CF | 1D311 |
ο U+03BF | 𝛐 U+1D6D0 | 1D311 |
π U+03C0 | 𝛑 U+1D6D1 | 1D311 |
ρ U+03C1 | 𝛒 U+1D6D2 | 1D311 |
ς U+03C2 | 𝛓 U+1D6D3 | 1D311 |
σ U+03C3 | 𝛔 U+1D6D4 | 1D311 |
τ U+03C4 | 𝛕 U+1D6D5 | 1D311 |
υ U+03C5 | 𝛖 U+1D6D6 | 1D311 |
φ U+03C6 | 𝛗 U+1D6D7 | 1D311 |
χ U+03C7 | 𝛘 U+1D6D8 | 1D311 |
ψ U+03C8 | 𝛙 U+1D6D9 | 1D311 |
ω U+03C9 | 𝛚 U+1D6DA | 1D311 |
∂ U+2202 | 𝛛 U+1D6DB | 1B4D9 |
ϵ U+03F5 | 𝛜 U+1D6DC | 1D2E7 |
ϑ U+03D1 | 𝛝 U+1D6DD | 1D30C |
ϰ U+03F0 | 𝛞 U+1D6DE | 1D2EE |
ϕ U+03D5 | 𝛟 U+1D6DF | 1D30A |
ϱ U+03F1 | 𝛠 U+1D6E0 | 1D2EF |
ϖ U+03D6 | 𝛡 U+1D6E1 | 1D30B |
Ϝ U+03DC | 𝟊 U+1D7CA | 1D3EE |
ϝ U+03DD | 𝟋 U+1D7CB | 1D3EE |
0 U+0030 | 𝟎 U+1D7CE | 1D79E |
1 U+0031 | 𝟏 U+1D7CF | 1D79E |
2 U+0032 | 𝟐 U+1D7D0 | 1D79E |
3 U+0033 | 𝟑 U+1D7D1 | 1D79E |
4 U+0034 | 𝟒 U+1D7D2 | 1D79E |
5 U+0035 | 𝟓 U+1D7D3 | 1D79E |
6 U+0036 | 𝟔 U+1D7D4 | 1D79E |
7 U+0037 | 𝟕 U+1D7D5 | 1D79E |
8 U+0038 | 𝟖 U+1D7D6 | 1D79E |
9 U+0039 | 𝟗 U+1D7D7 | 1D79E |
This section is non-normative.
+ +Original | fraktur | Δcode point |
---|---|---|
A U+0041 | 𝔄 U+1D504 | 1D4C3 |
B U+0042 | 𝔅 U+1D505 | 1D4C3 |
C U+0043 | ℭ U+0212D | 20EA |
D U+0044 | 𝔇 U+1D507 | 1D4C3 |
E U+0045 | 𝔈 U+1D508 | 1D4C3 |
F U+0046 | 𝔉 U+1D509 | 1D4C3 |
G U+0047 | 𝔊 U+1D50A | 1D4C3 |
H U+0048 | ℌ U+0210C | 20C4 |
I U+0049 | ℑ U+02111 | 20C8 |
J U+004A | 𝔍 U+1D50D | 1D4C3 |
K U+004B | 𝔎 U+1D50E | 1D4C3 |
L U+004C | 𝔏 U+1D50F | 1D4C3 |
M U+004D | 𝔐 U+1D510 | 1D4C3 |
N U+004E | 𝔑 U+1D511 | 1D4C3 |
O U+004F | 𝔒 U+1D512 | 1D4C3 |
P U+0050 | 𝔓 U+1D513 | 1D4C3 |
Q U+0051 | 𝔔 U+1D514 | 1D4C3 |
R U+0052 | ℜ U+0211C | 20CA |
S U+0053 | 𝔖 U+1D516 | 1D4C3 |
T U+0054 | 𝔗 U+1D517 | 1D4C3 |
U U+0055 | 𝔘 U+1D518 | 1D4C3 |
V U+0056 | 𝔙 U+1D519 | 1D4C3 |
W U+0057 | 𝔚 U+1D51A | 1D4C3 |
X U+0058 | 𝔛 U+1D51B | 1D4C3 |
Y U+0059 | 𝔜 U+1D51C | 1D4C3 |
Z U+005A | ℨ U+02128 | 20CE |
a U+0061 | 𝔞 U+1D51E | 1D4BD |
b U+0062 | 𝔟 U+1D51F | 1D4BD |
c U+0063 | 𝔠 U+1D520 | 1D4BD |
d U+0064 | 𝔡 U+1D521 | 1D4BD |
e U+0065 | 𝔢 U+1D522 | 1D4BD |
f U+0066 | 𝔣 U+1D523 | 1D4BD |
g U+0067 | 𝔤 U+1D524 | 1D4BD |
h U+0068 | 𝔥 U+1D525 | 1D4BD |
i U+0069 | 𝔦 U+1D526 | 1D4BD |
j U+006A | 𝔧 U+1D527 | 1D4BD |
k U+006B | 𝔨 U+1D528 | 1D4BD |
l U+006C | 𝔩 U+1D529 | 1D4BD |
m U+006D | 𝔪 U+1D52A | 1D4BD |
n U+006E | 𝔫 U+1D52B | 1D4BD |
o U+006F | 𝔬 U+1D52C | 1D4BD |
p U+0070 | 𝔭 U+1D52D | 1D4BD |
q U+0071 | 𝔮 U+1D52E | 1D4BD |
r U+0072 | 𝔯 U+1D52F | 1D4BD |
s U+0073 | 𝔰 U+1D530 | 1D4BD |
t U+0074 | 𝔱 U+1D531 | 1D4BD |
u U+0075 | 𝔲 U+1D532 | 1D4BD |
v U+0076 | 𝔳 U+1D533 | 1D4BD |
w U+0077 | 𝔴 U+1D534 | 1D4BD |
x U+0078 | 𝔵 U+1D535 | 1D4BD |
y U+0079 | 𝔶 U+1D536 | 1D4BD |
z U+007A | 𝔷 U+1D537 | 1D4BD |
This section is non-normative.
+ +Original | script | Δcode point |
---|---|---|
A U+0041 | 𝒜 U+1D49C | 1D45B |
B U+0042 | ℬ U+0212C | 20EA |
C U+0043 | 𝒞 U+1D49E | 1D45B |
D U+0044 | 𝒟 U+1D49F | 1D45B |
E U+0045 | ℰ U+02130 | 20EB |
F U+0046 | ℱ U+02131 | 20EB |
G U+0047 | 𝒢 U+1D4A2 | 1D45B |
H U+0048 | ℋ U+0210B | 20C3 |
I U+0049 | ℐ U+02110 | 20C7 |
J U+004A | 𝒥 U+1D4A5 | 1D45B |
K U+004B | 𝒦 U+1D4A6 | 1D45B |
L U+004C | ℒ U+02112 | 20C6 |
M U+004D | ℳ U+02133 | 20E6 |
N U+004E | 𝒩 U+1D4A9 | 1D45B |
O U+004F | 𝒪 U+1D4AA | 1D45B |
P U+0050 | 𝒫 U+1D4AB | 1D45B |
Q U+0051 | 𝒬 U+1D4AC | 1D45B |
R U+0052 | ℛ U+0211B | 20C9 |
S U+0053 | 𝒮 U+1D4AE | 1D45B |
T U+0054 | 𝒯 U+1D4AF | 1D45B |
U U+0055 | 𝒰 U+1D4B0 | 1D45B |
V U+0056 | 𝒱 U+1D4B1 | 1D45B |
W U+0057 | 𝒲 U+1D4B2 | 1D45B |
X U+0058 | 𝒳 U+1D4B3 | 1D45B |
Y U+0059 | 𝒴 U+1D4B4 | 1D45B |
Z U+005A | 𝒵 U+1D4B5 | 1D45B |
a U+0061 | 𝒶 U+1D4B6 | 1D455 |
b U+0062 | 𝒷 U+1D4B7 | 1D455 |
c U+0063 | 𝒸 U+1D4B8 | 1D455 |
d U+0064 | 𝒹 U+1D4B9 | 1D455 |
e U+0065 | ℯ U+0212F | 20CA |
f U+0066 | 𝒻 U+1D4BB | 1D455 |
g U+0067 | ℊ U+0210A | 20A3 |
h U+0068 | 𝒽 U+1D4BD | 1D455 |
i U+0069 | 𝒾 U+1D4BE | 1D455 |
j U+006A | 𝒿 U+1D4BF | 1D455 |
k U+006B | 𝓀 U+1D4C0 | 1D455 |
l U+006C | 𝓁 U+1D4C1 | 1D455 |
m U+006D | 𝓂 U+1D4C2 | 1D455 |
n U+006E | 𝓃 U+1D4C3 | 1D455 |
o U+006F | ℴ U+02134 | 20C5 |
p U+0070 | 𝓅 U+1D4C5 | 1D455 |
q U+0071 | 𝓆 U+1D4C6 | 1D455 |
r U+0072 | 𝓇 U+1D4C7 | 1D455 |
s U+0073 | 𝓈 U+1D4C8 | 1D455 |
t U+0074 | 𝓉 U+1D4C9 | 1D455 |
u U+0075 | 𝓊 U+1D4CA | 1D455 |
v U+0076 | 𝓋 U+1D4CB | 1D455 |
w U+0077 | 𝓌 U+1D4CC | 1D455 |
x U+0078 | 𝓍 U+1D4CD | 1D455 |
y U+0079 | 𝓎 U+1D4CE | 1D455 |
z U+007A | 𝓏 U+1D4CF | 1D455 |
This section is non-normative.
+ +Original | monospace | Δcode point |
---|---|---|
A U+0041 | 𝙰 U+1D670 | 1D62F |
B U+0042 | 𝙱 U+1D671 | 1D62F |
C U+0043 | 𝙲 U+1D672 | 1D62F |
D U+0044 | 𝙳 U+1D673 | 1D62F |
E U+0045 | 𝙴 U+1D674 | 1D62F |
F U+0046 | 𝙵 U+1D675 | 1D62F |
G U+0047 | 𝙶 U+1D676 | 1D62F |
H U+0048 | 𝙷 U+1D677 | 1D62F |
I U+0049 | 𝙸 U+1D678 | 1D62F |
J U+004A | 𝙹 U+1D679 | 1D62F |
K U+004B | 𝙺 U+1D67A | 1D62F |
L U+004C | 𝙻 U+1D67B | 1D62F |
M U+004D | 𝙼 U+1D67C | 1D62F |
N U+004E | 𝙽 U+1D67D | 1D62F |
O U+004F | 𝙾 U+1D67E | 1D62F |
P U+0050 | 𝙿 U+1D67F | 1D62F |
Q U+0051 | 𝚀 U+1D680 | 1D62F |
R U+0052 | 𝚁 U+1D681 | 1D62F |
S U+0053 | 𝚂 U+1D682 | 1D62F |
T U+0054 | 𝚃 U+1D683 | 1D62F |
U U+0055 | 𝚄 U+1D684 | 1D62F |
V U+0056 | 𝚅 U+1D685 | 1D62F |
W U+0057 | 𝚆 U+1D686 | 1D62F |
X U+0058 | 𝚇 U+1D687 | 1D62F |
Y U+0059 | 𝚈 U+1D688 | 1D62F |
Z U+005A | 𝚉 U+1D689 | 1D62F |
a U+0061 | 𝚊 U+1D68A | 1D629 |
b U+0062 | 𝚋 U+1D68B | 1D629 |
c U+0063 | 𝚌 U+1D68C | 1D629 |
d U+0064 | 𝚍 U+1D68D | 1D629 |
e U+0065 | 𝚎 U+1D68E | 1D629 |
f U+0066 | 𝚏 U+1D68F | 1D629 |
g U+0067 | 𝚐 U+1D690 | 1D629 |
h U+0068 | 𝚑 U+1D691 | 1D629 |
i U+0069 | 𝚒 U+1D692 | 1D629 |
j U+006A | 𝚓 U+1D693 | 1D629 |
k U+006B | 𝚔 U+1D694 | 1D629 |
l U+006C | 𝚕 U+1D695 | 1D629 |
m U+006D | 𝚖 U+1D696 | 1D629 |
n U+006E | 𝚗 U+1D697 | 1D629 |
o U+006F | 𝚘 U+1D698 | 1D629 |
p U+0070 | 𝚙 U+1D699 | 1D629 |
q U+0071 | 𝚚 U+1D69A | 1D629 |
r U+0072 | 𝚛 U+1D69B | 1D629 |
s U+0073 | 𝚜 U+1D69C | 1D629 |
t U+0074 | 𝚝 U+1D69D | 1D629 |
u U+0075 | 𝚞 U+1D69E | 1D629 |
v U+0076 | 𝚟 U+1D69F | 1D629 |
w U+0077 | 𝚠 U+1D6A0 | 1D629 |
x U+0078 | 𝚡 U+1D6A1 | 1D629 |
y U+0079 | 𝚢 U+1D6A2 | 1D629 |
z U+007A | 𝚣 U+1D6A3 | 1D629 |
0 U+0030 | 𝟶 U+1D7F6 | 1D7C6 |
1 U+0031 | 𝟷 U+1D7F7 | 1D7C6 |
2 U+0032 | 𝟸 U+1D7F8 | 1D7C6 |
3 U+0033 | 𝟹 U+1D7F9 | 1D7C6 |
4 U+0034 | 𝟺 U+1D7FA | 1D7C6 |
5 U+0035 | 𝟻 U+1D7FB | 1D7C6 |
6 U+0036 | 𝟼 U+1D7FC | 1D7C6 |
7 U+0037 | 𝟽 U+1D7FD | 1D7C6 |
8 U+0038 | 𝟾 U+1D7FE | 1D7C6 |
9 U+0039 | 𝟿 U+1D7FF | 1D7C6 |
This section is non-normative.
+ +Original | initial | Δcode point |
---|---|---|
ب U+0628 | 𞸡 U+1EE21 | 1E7F9 |
ج U+062C | 𞸢 U+1EE22 | 1E7F6 |
ه U+0647 | 𞸤 U+1EE24 | 1E7DD |
ح U+062D | 𞸧 U+1EE27 | 1E7FA |
ي U+064A | 𞸩 U+1EE29 | 1E7DF |
ك U+0643 | 𞸪 U+1EE2A | 1E7E7 |
ل U+0644 | 𞸫 U+1EE2B | 1E7E7 |
م U+0645 | 𞸬 U+1EE2C | 1E7E7 |
ن U+0646 | 𞸭 U+1EE2D | 1E7E7 |
س U+0633 | 𞸮 U+1EE2E | 1E7FB |
ع U+0639 | 𞸯 U+1EE2F | 1E7F6 |
ف U+0641 | 𞸰 U+1EE30 | 1E7EF |
ص U+0635 | 𞸱 U+1EE31 | 1E7FC |
ق U+0642 | 𞸲 U+1EE32 | 1E7F0 |
ش U+0634 | 𞸴 U+1EE34 | 1E800 |
ت U+062A | 𞸵 U+1EE35 | 1E80B |
ث U+062B | 𞸶 U+1EE36 | 1E80B |
خ U+062E | 𞸷 U+1EE37 | 1E809 |
ض U+0636 | 𞸹 U+1EE39 | 1E803 |
غ U+063A | 𞸻 U+1EE3B | 1E801 |
This section is non-normative.
+ +Original | sans-serif | Δcode point |
---|---|---|
A U+0041 | 𝖠 U+1D5A0 | 1D55F |
B U+0042 | 𝖡 U+1D5A1 | 1D55F |
C U+0043 | 𝖢 U+1D5A2 | 1D55F |
D U+0044 | 𝖣 U+1D5A3 | 1D55F |
E U+0045 | 𝖤 U+1D5A4 | 1D55F |
F U+0046 | 𝖥 U+1D5A5 | 1D55F |
G U+0047 | 𝖦 U+1D5A6 | 1D55F |
H U+0048 | 𝖧 U+1D5A7 | 1D55F |
I U+0049 | 𝖨 U+1D5A8 | 1D55F |
J U+004A | 𝖩 U+1D5A9 | 1D55F |
K U+004B | 𝖪 U+1D5AA | 1D55F |
L U+004C | 𝖫 U+1D5AB | 1D55F |
M U+004D | 𝖬 U+1D5AC | 1D55F |
N U+004E | 𝖭 U+1D5AD | 1D55F |
O U+004F | 𝖮 U+1D5AE | 1D55F |
P U+0050 | 𝖯 U+1D5AF | 1D55F |
Q U+0051 | 𝖰 U+1D5B0 | 1D55F |
R U+0052 | 𝖱 U+1D5B1 | 1D55F |
S U+0053 | 𝖲 U+1D5B2 | 1D55F |
T U+0054 | 𝖳 U+1D5B3 | 1D55F |
U U+0055 | 𝖴 U+1D5B4 | 1D55F |
V U+0056 | 𝖵 U+1D5B5 | 1D55F |
W U+0057 | 𝖶 U+1D5B6 | 1D55F |
X U+0058 | 𝖷 U+1D5B7 | 1D55F |
Y U+0059 | 𝖸 U+1D5B8 | 1D55F |
Z U+005A | 𝖹 U+1D5B9 | 1D55F |
a U+0061 | 𝖺 U+1D5BA | 1D559 |
b U+0062 | 𝖻 U+1D5BB | 1D559 |
c U+0063 | 𝖼 U+1D5BC | 1D559 |
d U+0064 | 𝖽 U+1D5BD | 1D559 |
e U+0065 | 𝖾 U+1D5BE | 1D559 |
f U+0066 | 𝖿 U+1D5BF | 1D559 |
g U+0067 | 𝗀 U+1D5C0 | 1D559 |
h U+0068 | 𝗁 U+1D5C1 | 1D559 |
i U+0069 | 𝗂 U+1D5C2 | 1D559 |
j U+006A | 𝗃 U+1D5C3 | 1D559 |
k U+006B | 𝗄 U+1D5C4 | 1D559 |
l U+006C | 𝗅 U+1D5C5 | 1D559 |
m U+006D | 𝗆 U+1D5C6 | 1D559 |
n U+006E | 𝗇 U+1D5C7 | 1D559 |
o U+006F | 𝗈 U+1D5C8 | 1D559 |
p U+0070 | 𝗉 U+1D5C9 | 1D559 |
q U+0071 | 𝗊 U+1D5CA | 1D559 |
r U+0072 | 𝗋 U+1D5CB | 1D559 |
s U+0073 | 𝗌 U+1D5CC | 1D559 |
t U+0074 | 𝗍 U+1D5CD | 1D559 |
u U+0075 | 𝗎 U+1D5CE | 1D559 |
v U+0076 | 𝗏 U+1D5CF | 1D559 |
w U+0077 | 𝗐 U+1D5D0 | 1D559 |
x U+0078 | 𝗑 U+1D5D1 | 1D559 |
y U+0079 | 𝗒 U+1D5D2 | 1D559 |
z U+007A | 𝗓 U+1D5D3 | 1D559 |
0 U+0030 | 𝟢 U+1D7E2 | 1D7B2 |
1 U+0031 | 𝟣 U+1D7E3 | 1D7B2 |
2 U+0032 | 𝟤 U+1D7E4 | 1D7B2 |
3 U+0033 | 𝟥 U+1D7E5 | 1D7B2 |
4 U+0034 | 𝟦 U+1D7E6 | 1D7B2 |
5 U+0035 | 𝟧 U+1D7E7 | 1D7B2 |
6 U+0036 | 𝟨 U+1D7E8 | 1D7B2 |
7 U+0037 | 𝟩 U+1D7E9 | 1D7B2 |
8 U+0038 | 𝟪 U+1D7EA | 1D7B2 |
9 U+0039 | 𝟫 U+1D7EB | 1D7B2 |
This section is non-normative.
+ +Original | double-struck | Δcode point |
---|---|---|
A U+0041 | 𝔸 U+1D538 | 1D4F7 |
B U+0042 | 𝔹 U+1D539 | 1D4F7 |
C U+0043 | ℂ U+02102 | 20BF |
D U+0044 | 𝔻 U+1D53B | 1D4F7 |
E U+0045 | 𝔼 U+1D53C | 1D4F7 |
F U+0046 | 𝔽 U+1D53D | 1D4F7 |
G U+0047 | 𝔾 U+1D53E | 1D4F7 |
H U+0048 | ℍ U+0210D | 20C5 |
I U+0049 | 𝕀 U+1D540 | 1D4F7 |
J U+004A | 𝕁 U+1D541 | 1D4F7 |
K U+004B | 𝕂 U+1D542 | 1D4F7 |
L U+004C | 𝕃 U+1D543 | 1D4F7 |
M U+004D | 𝕄 U+1D544 | 1D4F7 |
N U+004E | ℕ U+02115 | 20C7 |
O U+004F | 𝕆 U+1D546 | 1D4F7 |
P U+0050 | ℙ U+02119 | 20C9 |
Q U+0051 | ℚ U+0211A | 20C9 |
R U+0052 | ℝ U+0211D | 20CB |
S U+0053 | 𝕊 U+1D54A | 1D4F7 |
T U+0054 | 𝕋 U+1D54B | 1D4F7 |
U U+0055 | 𝕌 U+1D54C | 1D4F7 |
V U+0056 | 𝕍 U+1D54D | 1D4F7 |
W U+0057 | 𝕎 U+1D54E | 1D4F7 |
X U+0058 | 𝕏 U+1D54F | 1D4F7 |
Y U+0059 | 𝕐 U+1D550 | 1D4F7 |
Z U+005A | ℤ U+02124 | 20CA |
a U+0061 | 𝕒 U+1D552 | 1D4F1 |
b U+0062 | 𝕓 U+1D553 | 1D4F1 |
c U+0063 | 𝕔 U+1D554 | 1D4F1 |
d U+0064 | 𝕕 U+1D555 | 1D4F1 |
e U+0065 | 𝕖 U+1D556 | 1D4F1 |
f U+0066 | 𝕗 U+1D557 | 1D4F1 |
g U+0067 | 𝕘 U+1D558 | 1D4F1 |
h U+0068 | 𝕙 U+1D559 | 1D4F1 |
i U+0069 | 𝕚 U+1D55A | 1D4F1 |
j U+006A | 𝕛 U+1D55B | 1D4F1 |
k U+006B | 𝕜 U+1D55C | 1D4F1 |
l U+006C | 𝕝 U+1D55D | 1D4F1 |
m U+006D | 𝕞 U+1D55E | 1D4F1 |
n U+006E | 𝕟 U+1D55F | 1D4F1 |
o U+006F | 𝕠 U+1D560 | 1D4F1 |
p U+0070 | 𝕡 U+1D561 | 1D4F1 |
q U+0071 | 𝕢 U+1D562 | 1D4F1 |
r U+0072 | 𝕣 U+1D563 | 1D4F1 |
s U+0073 | 𝕤 U+1D564 | 1D4F1 |
t U+0074 | 𝕥 U+1D565 | 1D4F1 |
u U+0075 | 𝕦 U+1D566 | 1D4F1 |
v U+0076 | 𝕧 U+1D567 | 1D4F1 |
w U+0077 | 𝕨 U+1D568 | 1D4F1 |
x U+0078 | 𝕩 U+1D569 | 1D4F1 |
y U+0079 | 𝕪 U+1D56A | 1D4F1 |
z U+007A | 𝕫 U+1D56B | 1D4F1 |
0 U+0030 | 𝟘 U+1D7D8 | 1D7A8 |
1 U+0031 | 𝟙 U+1D7D9 | 1D7A8 |
2 U+0032 | 𝟚 U+1D7DA | 1D7A8 |
3 U+0033 | 𝟛 U+1D7DB | 1D7A8 |
4 U+0034 | 𝟜 U+1D7DC | 1D7A8 |
5 U+0035 | 𝟝 U+1D7DD | 1D7A8 |
6 U+0036 | 𝟞 U+1D7DE | 1D7A8 |
7 U+0037 | 𝟟 U+1D7DF | 1D7A8 |
8 U+0038 | 𝟠 U+1D7E0 | 1D7A8 |
9 U+0039 | 𝟡 U+1D7E1 | 1D7A8 |
ب U+0628 | 𞺡 U+1EEA1 | 1E879 |
ج U+062C | 𞺢 U+1EEA2 | 1E876 |
د U+062F | 𞺣 U+1EEA3 | 1E874 |
و U+0648 | 𞺥 U+1EEA5 | 1E85D |
ز U+0632 | 𞺦 U+1EEA6 | 1E874 |
ح U+062D | 𞺧 U+1EEA7 | 1E87A |
ط U+0637 | 𞺨 U+1EEA8 | 1E871 |
ي U+064A | 𞺩 U+1EEA9 | 1E85F |
ل U+0644 | 𞺫 U+1EEAB | 1E867 |
م U+0645 | 𞺬 U+1EEAC | 1E867 |
ن U+0646 | 𞺭 U+1EEAD | 1E867 |
س U+0633 | 𞺮 U+1EEAE | 1E87B |
ع U+0639 | 𞺯 U+1EEAF | 1E876 |
ف U+0641 | 𞺰 U+1EEB0 | 1E86F |
ص U+0635 | 𞺱 U+1EEB1 | 1E87C |
ق U+0642 | 𞺲 U+1EEB2 | 1E870 |
ر U+0631 | 𞺳 U+1EEB3 | 1E882 |
ش U+0634 | 𞺴 U+1EEB4 | 1E880 |
ت U+062A | 𞺵 U+1EEB5 | 1E88B |
ث U+062B | 𞺶 U+1EEB6 | 1E88B |
خ U+062E | 𞺷 U+1EEB7 | 1E889 |
ذ U+0630 | 𞺸 U+1EEB8 | 1E888 |
ض U+0636 | 𞺹 U+1EEB9 | 1E883 |
ظ U+0638 | 𞺺 U+1EEBA | 1E882 |
غ U+063A | 𞺻 U+1EEBB | 1E881 |
This section is non-normative.
+ +Original | looped | Δcode point |
---|---|---|
ا U+0627 | 𞺀 U+1EE80 | 1E859 |
ب U+0628 | 𞺁 U+1EE81 | 1E859 |
ج U+062C | 𞺂 U+1EE82 | 1E856 |
د U+062F | 𞺃 U+1EE83 | 1E854 |
ه U+0647 | 𞺄 U+1EE84 | 1E83D |
و U+0648 | 𞺅 U+1EE85 | 1E83D |
ز U+0632 | 𞺆 U+1EE86 | 1E854 |
ح U+062D | 𞺇 U+1EE87 | 1E85A |
ط U+0637 | 𞺈 U+1EE88 | 1E851 |
ي U+064A | 𞺉 U+1EE89 | 1E83F |
ل U+0644 | 𞺋 U+1EE8B | 1E847 |
م U+0645 | 𞺌 U+1EE8C | 1E847 |
ن U+0646 | 𞺍 U+1EE8D | 1E847 |
س U+0633 | 𞺎 U+1EE8E | 1E85B |
ع U+0639 | 𞺏 U+1EE8F | 1E856 |
ف U+0641 | 𞺐 U+1EE90 | 1E84F |
ص U+0635 | 𞺑 U+1EE91 | 1E85C |
ق U+0642 | 𞺒 U+1EE92 | 1E850 |
ر U+0631 | 𞺓 U+1EE93 | 1E862 |
ش U+0634 | 𞺔 U+1EE94 | 1E860 |
ت U+062A | 𞺕 U+1EE95 | 1E86B |
ث U+062B | 𞺖 U+1EE96 | 1E86B |
خ U+062E | 𞺗 U+1EE97 | 1E869 |
ذ U+0630 | 𞺘 U+1EE98 | 1E868 |
ض U+0636 | 𞺙 U+1EE99 | 1E863 |
ظ U+0638 | 𞺚 U+1EE9A | 1E862 |
غ U+063A | 𞺛 U+1EE9B | 1E861 |
This section is non-normative.
+ +Original | stretched | Δcode point |
---|---|---|
ب U+0628 | 𞹡 U+1EE61 | 1E839 |
ج U+062C | 𞹢 U+1EE62 | 1E836 |
ه U+0647 | 𞹤 U+1EE64 | 1E81D |
ح U+062D | 𞹧 U+1EE67 | 1E83A |
ط U+0637 | 𞹨 U+1EE68 | 1E831 |
ي U+064A | 𞹩 U+1EE69 | 1E81F |
ك U+0643 | 𞹪 U+1EE6A | 1E827 |
م U+0645 | 𞹬 U+1EE6C | 1E827 |
ن U+0646 | 𞹭 U+1EE6D | 1E827 |
س U+0633 | 𞹮 U+1EE6E | 1E83B |
ع U+0639 | 𞹯 U+1EE6F | 1E836 |
ف U+0641 | 𞹰 U+1EE70 | 1E82F |
ص U+0635 | 𞹱 U+1EE71 | 1E83C |
ق U+0642 | 𞹲 U+1EE72 | 1E830 |
ش U+0634 | 𞹴 U+1EE74 | 1E840 |
ت U+062A | 𞹵 U+1EE75 | 1E84B |
ث U+062B | 𞹶 U+1EE76 | 1E84B |
خ U+062E | 𞹷 U+1EE77 | 1E849 |
ض U+0636 | 𞹹 U+1EE79 | 1E843 |
ظ U+0638 | 𞹺 U+1EE7A | 1E842 |
غ U+063A | 𞹻 U+1EE7B | 1E841 |
ٮ U+066E | 𞹼 U+1EE7C | 1E80E |
ڡ U+06A1 | 𞹾 U+1EE7E | 1E7DD |
Original | italic | Δcode point |
---|---|---|
A U+0041 | 𝐴 U+1D434 | 1D3F3 |
B U+0042 | 𝐵 U+1D435 | 1D3F3 |
C U+0043 | 𝐶 U+1D436 | 1D3F3 |
D U+0044 | 𝐷 U+1D437 | 1D3F3 |
E U+0045 | 𝐸 U+1D438 | 1D3F3 |
F U+0046 | 𝐹 U+1D439 | 1D3F3 |
G U+0047 | 𝐺 U+1D43A | 1D3F3 |
H U+0048 | 𝐻 U+1D43B | 1D3F3 |
I U+0049 | 𝐼 U+1D43C | 1D3F3 |
J U+004A | 𝐽 U+1D43D | 1D3F3 |
K U+004B | 𝐾 U+1D43E | 1D3F3 |
L U+004C | 𝐿 U+1D43F | 1D3F3 |
M U+004D | 𝑀 U+1D440 | 1D3F3 |
N U+004E | 𝑁 U+1D441 | 1D3F3 |
O U+004F | 𝑂 U+1D442 | 1D3F3 |
P U+0050 | 𝑃 U+1D443 | 1D3F3 |
Q U+0051 | 𝑄 U+1D444 | 1D3F3 |
R U+0052 | 𝑅 U+1D445 | 1D3F3 |
S U+0053 | 𝑆 U+1D446 | 1D3F3 |
T U+0054 | 𝑇 U+1D447 | 1D3F3 |
U U+0055 | 𝑈 U+1D448 | 1D3F3 |
V U+0056 | 𝑉 U+1D449 | 1D3F3 |
W U+0057 | 𝑊 U+1D44A | 1D3F3 |
X U+0058 | 𝑋 U+1D44B | 1D3F3 |
Y U+0059 | 𝑌 U+1D44C | 1D3F3 |
Z U+005A | 𝑍 U+1D44D | 1D3F3 |
a U+0061 | 𝑎 U+1D44E | 1D3ED |
b U+0062 | 𝑏 U+1D44F | 1D3ED |
c U+0063 | 𝑐 U+1D450 | 1D3ED |
d U+0064 | 𝑑 U+1D451 | 1D3ED |
e U+0065 | 𝑒 U+1D452 | 1D3ED |
f U+0066 | 𝑓 U+1D453 | 1D3ED |
g U+0067 | 𝑔 U+1D454 | 1D3ED |
h U+0068 | ℎ U+0210E | 20A6 |
i U+0069 | 𝑖 U+1D456 | 1D3ED |
j U+006A | 𝑗 U+1D457 | 1D3ED |
k U+006B | 𝑘 U+1D458 | 1D3ED |
l U+006C | 𝑙 U+1D459 | 1D3ED |
m U+006D | 𝑚 U+1D45A | 1D3ED |
n U+006E | 𝑛 U+1D45B | 1D3ED |
o U+006F | 𝑜 U+1D45C | 1D3ED |
p U+0070 | 𝑝 U+1D45D | 1D3ED |
q U+0071 | 𝑞 U+1D45E | 1D3ED |
r U+0072 | 𝑟 U+1D45F | 1D3ED |
s U+0073 | 𝑠 U+1D460 | 1D3ED |
t U+0074 | 𝑡 U+1D461 | 1D3ED |
u U+0075 | 𝑢 U+1D462 | 1D3ED |
v U+0076 | 𝑣 U+1D463 | 1D3ED |
w U+0077 | 𝑤 U+1D464 | 1D3ED |
x U+0078 | 𝑥 U+1D465 | 1D3ED |
y U+0079 | 𝑦 U+1D466 | 1D3ED |
z U+007A | 𝑧 U+1D467 | 1D3ED |
ı U+0131 | 𝚤 U+1D6A4 | 1D573 |
ȷ U+0237 | 𝚥 U+1D6A5 | 1D46E |
Α U+0391 | 𝛢 U+1D6E2 | 1D351 |
Β U+0392 | 𝛣 U+1D6E3 | 1D351 |
Γ U+0393 | 𝛤 U+1D6E4 | 1D351 |
Δ U+0394 | 𝛥 U+1D6E5 | 1D351 |
Ε U+0395 | 𝛦 U+1D6E6 | 1D351 |
Ζ U+0396 | 𝛧 U+1D6E7 | 1D351 |
Η U+0397 | 𝛨 U+1D6E8 | 1D351 |
Θ U+0398 | 𝛩 U+1D6E9 | 1D351 |
Ι U+0399 | 𝛪 U+1D6EA | 1D351 |
Κ U+039A | 𝛫 U+1D6EB | 1D351 |
Λ U+039B | 𝛬 U+1D6EC | 1D351 |
Μ U+039C | 𝛭 U+1D6ED | 1D351 |
Ν U+039D | 𝛮 U+1D6EE | 1D351 |
Ξ U+039E | 𝛯 U+1D6EF | 1D351 |
Ο U+039F | 𝛰 U+1D6F0 | 1D351 |
Π U+03A0 | 𝛱 U+1D6F1 | 1D351 |
Ρ U+03A1 | 𝛲 U+1D6F2 | 1D351 |
ϴ U+03F4 | 𝛳 U+1D6F3 | 1D2FF |
Σ U+03A3 | 𝛴 U+1D6F4 | 1D351 |
Τ U+03A4 | 𝛵 U+1D6F5 | 1D351 |
Υ U+03A5 | 𝛶 U+1D6F6 | 1D351 |
Φ U+03A6 | 𝛷 U+1D6F7 | 1D351 |
Χ U+03A7 | 𝛸 U+1D6F8 | 1D351 |
Ψ U+03A8 | 𝛹 U+1D6F9 | 1D351 |
Ω U+03A9 | 𝛺 U+1D6FA | 1D351 |
∇ U+2207 | 𝛻 U+1D6FB | 1B4F4 |
α U+03B1 | 𝛼 U+1D6FC | 1D34B |
β U+03B2 | 𝛽 U+1D6FD | 1D34B |
γ U+03B3 | 𝛾 U+1D6FE | 1D34B |
δ U+03B4 | 𝛿 U+1D6FF | 1D34B |
ε U+03B5 | 𝜀 U+1D700 | 1D34B |
ζ U+03B6 | 𝜁 U+1D701 | 1D34B |
η U+03B7 | 𝜂 U+1D702 | 1D34B |
θ U+03B8 | 𝜃 U+1D703 | 1D34B |
ι U+03B9 | 𝜄 U+1D704 | 1D34B |
κ U+03BA | 𝜅 U+1D705 | 1D34B |
λ U+03BB | 𝜆 U+1D706 | 1D34B |
μ U+03BC | 𝜇 U+1D707 | 1D34B |
ν U+03BD | 𝜈 U+1D708 | 1D34B |
ξ U+03BE | 𝜉 U+1D709 | 1D34B |
ο U+03BF | 𝜊 U+1D70A | 1D34B |
π U+03C0 | 𝜋 U+1D70B | 1D34B |
ρ U+03C1 | 𝜌 U+1D70C | 1D34B |
ς U+03C2 | 𝜍 U+1D70D | 1D34B |
σ U+03C3 | 𝜎 U+1D70E | 1D34B |
τ U+03C4 | 𝜏 U+1D70F | 1D34B |
υ U+03C5 | 𝜐 U+1D710 | 1D34B |
φ U+03C6 | 𝜑 U+1D711 | 1D34B |
χ U+03C7 | 𝜒 U+1D712 | 1D34B |
ψ U+03C8 | 𝜓 U+1D713 | 1D34B |
ω U+03C9 | 𝜔 U+1D714 | 1D34B |
∂ U+2202 | 𝜕 U+1D715 | 1B513 |
ϵ U+03F5 | 𝜖 U+1D716 | 1D321 |
ϑ U+03D1 | 𝜗 U+1D717 | 1D346 |
ϰ U+03F0 | 𝜘 U+1D718 | 1D328 |
ϕ U+03D5 | 𝜙 U+1D719 | 1D344 |
ϱ U+03F1 | 𝜚 U+1D71A | 1D329 |
ϖ U+03D6 | 𝜛 U+1D71B | 1D345 |
This section is non-normative.
+ +Original | bold-fraktur | Δcode point |
---|---|---|
A U+0041 | 𝕬 U+1D56C | 1D52B |
B U+0042 | 𝕭 U+1D56D | 1D52B |
C U+0043 | 𝕮 U+1D56E | 1D52B |
D U+0044 | 𝕯 U+1D56F | 1D52B |
E U+0045 | 𝕰 U+1D570 | 1D52B |
F U+0046 | 𝕱 U+1D571 | 1D52B |
G U+0047 | 𝕲 U+1D572 | 1D52B |
H U+0048 | 𝕳 U+1D573 | 1D52B |
I U+0049 | 𝕴 U+1D574 | 1D52B |
J U+004A | 𝕵 U+1D575 | 1D52B |
K U+004B | 𝕶 U+1D576 | 1D52B |
L U+004C | 𝕷 U+1D577 | 1D52B |
M U+004D | 𝕸 U+1D578 | 1D52B |
N U+004E | 𝕹 U+1D579 | 1D52B |
O U+004F | 𝕺 U+1D57A | 1D52B |
P U+0050 | 𝕻 U+1D57B | 1D52B |
Q U+0051 | 𝕼 U+1D57C | 1D52B |
R U+0052 | 𝕽 U+1D57D | 1D52B |
S U+0053 | 𝕾 U+1D57E | 1D52B |
T U+0054 | 𝕿 U+1D57F | 1D52B |
U U+0055 | 𝖀 U+1D580 | 1D52B |
V U+0056 | 𝖁 U+1D581 | 1D52B |
W U+0057 | 𝖂 U+1D582 | 1D52B |
X U+0058 | 𝖃 U+1D583 | 1D52B |
Y U+0059 | 𝖄 U+1D584 | 1D52B |
Z U+005A | 𝖅 U+1D585 | 1D52B |
a U+0061 | 𝖆 U+1D586 | 1D525 |
b U+0062 | 𝖇 U+1D587 | 1D525 |
c U+0063 | 𝖈 U+1D588 | 1D525 |
d U+0064 | 𝖉 U+1D589 | 1D525 |
e U+0065 | 𝖊 U+1D58A | 1D525 |
f U+0066 | 𝖋 U+1D58B | 1D525 |
g U+0067 | 𝖌 U+1D58C | 1D525 |
h U+0068 | 𝖍 U+1D58D | 1D525 |
i U+0069 | 𝖎 U+1D58E | 1D525 |
j U+006A | 𝖏 U+1D58F | 1D525 |
k U+006B | 𝖐 U+1D590 | 1D525 |
l U+006C | 𝖑 U+1D591 | 1D525 |
m U+006D | 𝖒 U+1D592 | 1D525 |
n U+006E | 𝖓 U+1D593 | 1D525 |
o U+006F | 𝖔 U+1D594 | 1D525 |
p U+0070 | 𝖕 U+1D595 | 1D525 |
q U+0071 | 𝖖 U+1D596 | 1D525 |
r U+0072 | 𝖗 U+1D597 | 1D525 |
s U+0073 | 𝖘 U+1D598 | 1D525 |
t U+0074 | 𝖙 U+1D599 | 1D525 |
u U+0075 | 𝖚 U+1D59A | 1D525 |
v U+0076 | 𝖛 U+1D59B | 1D525 |
w U+0077 | 𝖜 U+1D59C | 1D525 |
x U+0078 | 𝖝 U+1D59D | 1D525 |
y U+0079 | 𝖞 U+1D59E | 1D525 |
z U+007A | 𝖟 U+1D59F | 1D525 |
This section is non-normative.
+ +Original | sans-serif-bold-italic | Δcode point |
---|---|---|
A U+0041 | 𝘼 U+1D63C | 1D5FB |
B U+0042 | 𝘽 U+1D63D | 1D5FB |
C U+0043 | 𝘾 U+1D63E | 1D5FB |
D U+0044 | 𝘿 U+1D63F | 1D5FB |
E U+0045 | 𝙀 U+1D640 | 1D5FB |
F U+0046 | 𝙁 U+1D641 | 1D5FB |
G U+0047 | 𝙂 U+1D642 | 1D5FB |
H U+0048 | 𝙃 U+1D643 | 1D5FB |
I U+0049 | 𝙄 U+1D644 | 1D5FB |
J U+004A | 𝙅 U+1D645 | 1D5FB |
K U+004B | 𝙆 U+1D646 | 1D5FB |
L U+004C | 𝙇 U+1D647 | 1D5FB |
M U+004D | 𝙈 U+1D648 | 1D5FB |
N U+004E | 𝙉 U+1D649 | 1D5FB |
O U+004F | 𝙊 U+1D64A | 1D5FB |
P U+0050 | 𝙋 U+1D64B | 1D5FB |
Q U+0051 | 𝙌 U+1D64C | 1D5FB |
R U+0052 | 𝙍 U+1D64D | 1D5FB |
S U+0053 | 𝙎 U+1D64E | 1D5FB |
T U+0054 | 𝙏 U+1D64F | 1D5FB |
U U+0055 | 𝙐 U+1D650 | 1D5FB |
V U+0056 | 𝙑 U+1D651 | 1D5FB |
W U+0057 | 𝙒 U+1D652 | 1D5FB |
X U+0058 | 𝙓 U+1D653 | 1D5FB |
Y U+0059 | 𝙔 U+1D654 | 1D5FB |
Z U+005A | 𝙕 U+1D655 | 1D5FB |
a U+0061 | 𝙖 U+1D656 | 1D5F5 |
b U+0062 | 𝙗 U+1D657 | 1D5F5 |
c U+0063 | 𝙘 U+1D658 | 1D5F5 |
d U+0064 | 𝙙 U+1D659 | 1D5F5 |
e U+0065 | 𝙚 U+1D65A | 1D5F5 |
f U+0066 | 𝙛 U+1D65B | 1D5F5 |
g U+0067 | 𝙜 U+1D65C | 1D5F5 |
h U+0068 | 𝙝 U+1D65D | 1D5F5 |
i U+0069 | 𝙞 U+1D65E | 1D5F5 |
j U+006A | 𝙟 U+1D65F | 1D5F5 |
k U+006B | 𝙠 U+1D660 | 1D5F5 |
l U+006C | 𝙡 U+1D661 | 1D5F5 |
m U+006D | 𝙢 U+1D662 | 1D5F5 |
n U+006E | 𝙣 U+1D663 | 1D5F5 |
o U+006F | 𝙤 U+1D664 | 1D5F5 |
p U+0070 | 𝙥 U+1D665 | 1D5F5 |
q U+0071 | 𝙦 U+1D666 | 1D5F5 |
r U+0072 | 𝙧 U+1D667 | 1D5F5 |
s U+0073 | 𝙨 U+1D668 | 1D5F5 |
t U+0074 | 𝙩 U+1D669 | 1D5F5 |
u U+0075 | 𝙪 U+1D66A | 1D5F5 |
v U+0076 | 𝙫 U+1D66B | 1D5F5 |
w U+0077 | 𝙬 U+1D66C | 1D5F5 |
x U+0078 | 𝙭 U+1D66D | 1D5F5 |
y U+0079 | 𝙮 U+1D66E | 1D5F5 |
z U+007A | 𝙯 U+1D66F | 1D5F5 |
Α U+0391 | 𝞐 U+1D790 | 1D3FF |
Β U+0392 | 𝞑 U+1D791 | 1D3FF |
Γ U+0393 | 𝞒 U+1D792 | 1D3FF |
Δ U+0394 | 𝞓 U+1D793 | 1D3FF |
Ε U+0395 | 𝞔 U+1D794 | 1D3FF |
Ζ U+0396 | 𝞕 U+1D795 | 1D3FF |
Η U+0397 | 𝞖 U+1D796 | 1D3FF |
Θ U+0398 | 𝞗 U+1D797 | 1D3FF |
Ι U+0399 | 𝞘 U+1D798 | 1D3FF |
Κ U+039A | 𝞙 U+1D799 | 1D3FF |
Λ U+039B | 𝞚 U+1D79A | 1D3FF |
Μ U+039C | 𝞛 U+1D79B | 1D3FF |
Ν U+039D | 𝞜 U+1D79C | 1D3FF |
Ξ U+039E | 𝞝 U+1D79D | 1D3FF |
Ο U+039F | 𝞞 U+1D79E | 1D3FF |
Π U+03A0 | 𝞟 U+1D79F | 1D3FF |
Ρ U+03A1 | 𝞠 U+1D7A0 | 1D3FF |
ϴ U+03F4 | 𝞡 U+1D7A1 | 1D3AD |
Σ U+03A3 | 𝞢 U+1D7A2 | 1D3FF |
Τ U+03A4 | 𝞣 U+1D7A3 | 1D3FF |
Υ U+03A5 | 𝞤 U+1D7A4 | 1D3FF |
Φ U+03A6 | 𝞥 U+1D7A5 | 1D3FF |
Χ U+03A7 | 𝞦 U+1D7A6 | 1D3FF |
Ψ U+03A8 | 𝞧 U+1D7A7 | 1D3FF |
Ω U+03A9 | 𝞨 U+1D7A8 | 1D3FF |
∇ U+2207 | 𝞩 U+1D7A9 | 1B5A2 |
α U+03B1 | 𝞪 U+1D7AA | 1D3F9 |
β U+03B2 | 𝞫 U+1D7AB | 1D3F9 |
γ U+03B3 | 𝞬 U+1D7AC | 1D3F9 |
δ U+03B4 | 𝞭 U+1D7AD | 1D3F9 |
ε U+03B5 | 𝞮 U+1D7AE | 1D3F9 |
ζ U+03B6 | 𝞯 U+1D7AF | 1D3F9 |
η U+03B7 | 𝞰 U+1D7B0 | 1D3F9 |
θ U+03B8 | 𝞱 U+1D7B1 | 1D3F9 |
ι U+03B9 | 𝞲 U+1D7B2 | 1D3F9 |
κ U+03BA | 𝞳 U+1D7B3 | 1D3F9 |
λ U+03BB | 𝞴 U+1D7B4 | 1D3F9 |
μ U+03BC | 𝞵 U+1D7B5 | 1D3F9 |
ν U+03BD | 𝞶 U+1D7B6 | 1D3F9 |
ξ U+03BE | 𝞷 U+1D7B7 | 1D3F9 |
ο U+03BF | 𝞸 U+1D7B8 | 1D3F9 |
π U+03C0 | 𝞹 U+1D7B9 | 1D3F9 |
ρ U+03C1 | 𝞺 U+1D7BA | 1D3F9 |
ς U+03C2 | 𝞻 U+1D7BB | 1D3F9 |
σ U+03C3 | 𝞼 U+1D7BC | 1D3F9 |
τ U+03C4 | 𝞽 U+1D7BD | 1D3F9 |
υ U+03C5 | 𝞾 U+1D7BE | 1D3F9 |
φ U+03C6 | 𝞿 U+1D7BF | 1D3F9 |
χ U+03C7 | 𝟀 U+1D7C0 | 1D3F9 |
ψ U+03C8 | 𝟁 U+1D7C1 | 1D3F9 |
ω U+03C9 | 𝟂 U+1D7C2 | 1D3F9 |
∂ U+2202 | 𝟃 U+1D7C3 | 1B5C1 |
ϵ U+03F5 | 𝟄 U+1D7C4 | 1D3CF |
ϑ U+03D1 | 𝟅 U+1D7C5 | 1D3F4 |
ϰ U+03F0 | 𝟆 U+1D7C6 | 1D3D6 |
ϕ U+03D5 | 𝟇 U+1D7C7 | 1D3F2 |
ϱ U+03F1 | 𝟈 U+1D7C8 | 1D3D7 |
ϖ U+03D6 | 𝟉 U+1D7C9 | 1D3F3 |
This section is non-normative.
+ +Original | sans-serif-italic | Δcode point |
---|---|---|
A U+0041 | 𝘈 U+1D608 | 1D5C7 |
B U+0042 | 𝘉 U+1D609 | 1D5C7 |
C U+0043 | 𝘊 U+1D60A | 1D5C7 |
D U+0044 | 𝘋 U+1D60B | 1D5C7 |
E U+0045 | 𝘌 U+1D60C | 1D5C7 |
F U+0046 | 𝘍 U+1D60D | 1D5C7 |
G U+0047 | 𝘎 U+1D60E | 1D5C7 |
H U+0048 | 𝘏 U+1D60F | 1D5C7 |
I U+0049 | 𝘐 U+1D610 | 1D5C7 |
J U+004A | 𝘑 U+1D611 | 1D5C7 |
K U+004B | 𝘒 U+1D612 | 1D5C7 |
L U+004C | 𝘓 U+1D613 | 1D5C7 |
M U+004D | 𝘔 U+1D614 | 1D5C7 |
N U+004E | 𝘕 U+1D615 | 1D5C7 |
O U+004F | 𝘖 U+1D616 | 1D5C7 |
P U+0050 | 𝘗 U+1D617 | 1D5C7 |
Q U+0051 | 𝘘 U+1D618 | 1D5C7 |
R U+0052 | 𝘙 U+1D619 | 1D5C7 |
S U+0053 | 𝘚 U+1D61A | 1D5C7 |
T U+0054 | 𝘛 U+1D61B | 1D5C7 |
U U+0055 | 𝘜 U+1D61C | 1D5C7 |
V U+0056 | 𝘝 U+1D61D | 1D5C7 |
W U+0057 | 𝘞 U+1D61E | 1D5C7 |
X U+0058 | 𝘟 U+1D61F | 1D5C7 |
Y U+0059 | 𝘠 U+1D620 | 1D5C7 |
Z U+005A | 𝘡 U+1D621 | 1D5C7 |
a U+0061 | 𝘢 U+1D622 | 1D5C1 |
b U+0062 | 𝘣 U+1D623 | 1D5C1 |
c U+0063 | 𝘤 U+1D624 | 1D5C1 |
d U+0064 | 𝘥 U+1D625 | 1D5C1 |
e U+0065 | 𝘦 U+1D626 | 1D5C1 |
f U+0066 | 𝘧 U+1D627 | 1D5C1 |
g U+0067 | 𝘨 U+1D628 | 1D5C1 |
h U+0068 | 𝘩 U+1D629 | 1D5C1 |
i U+0069 | 𝘪 U+1D62A | 1D5C1 |
j U+006A | 𝘫 U+1D62B | 1D5C1 |
k U+006B | 𝘬 U+1D62C | 1D5C1 |
l U+006C | 𝘭 U+1D62D | 1D5C1 |
m U+006D | 𝘮 U+1D62E | 1D5C1 |
n U+006E | 𝘯 U+1D62F | 1D5C1 |
o U+006F | 𝘰 U+1D630 | 1D5C1 |
p U+0070 | 𝘱 U+1D631 | 1D5C1 |
q U+0071 | 𝘲 U+1D632 | 1D5C1 |
r U+0072 | 𝘳 U+1D633 | 1D5C1 |
s U+0073 | 𝘴 U+1D634 | 1D5C1 |
t U+0074 | 𝘵 U+1D635 | 1D5C1 |
u U+0075 | 𝘶 U+1D636 | 1D5C1 |
v U+0076 | 𝘷 U+1D637 | 1D5C1 |
w U+0077 | 𝘸 U+1D638 | 1D5C1 |
x U+0078 | 𝘹 U+1D639 | 1D5C1 |
y U+0079 | 𝘺 U+1D63A | 1D5C1 |
z U+007A | 𝘻 U+1D63B | 1D5C1 |
This section is non-normative.
+ +Original | bold-sans-serif | Δcode point |
---|---|---|
A U+0041 | 𝗔 U+1D5D4 | 1D593 |
B U+0042 | 𝗕 U+1D5D5 | 1D593 |
C U+0043 | 𝗖 U+1D5D6 | 1D593 |
D U+0044 | 𝗗 U+1D5D7 | 1D593 |
E U+0045 | 𝗘 U+1D5D8 | 1D593 |
F U+0046 | 𝗙 U+1D5D9 | 1D593 |
G U+0047 | 𝗚 U+1D5DA | 1D593 |
H U+0048 | 𝗛 U+1D5DB | 1D593 |
I U+0049 | 𝗜 U+1D5DC | 1D593 |
J U+004A | 𝗝 U+1D5DD | 1D593 |
K U+004B | 𝗞 U+1D5DE | 1D593 |
L U+004C | 𝗟 U+1D5DF | 1D593 |
M U+004D | 𝗠 U+1D5E0 | 1D593 |
N U+004E | 𝗡 U+1D5E1 | 1D593 |
O U+004F | 𝗢 U+1D5E2 | 1D593 |
P U+0050 | 𝗣 U+1D5E3 | 1D593 |
Q U+0051 | 𝗤 U+1D5E4 | 1D593 |
R U+0052 | 𝗥 U+1D5E5 | 1D593 |
S U+0053 | 𝗦 U+1D5E6 | 1D593 |
T U+0054 | 𝗧 U+1D5E7 | 1D593 |
U U+0055 | 𝗨 U+1D5E8 | 1D593 |
V U+0056 | 𝗩 U+1D5E9 | 1D593 |
W U+0057 | 𝗪 U+1D5EA | 1D593 |
X U+0058 | 𝗫 U+1D5EB | 1D593 |
Y U+0059 | 𝗬 U+1D5EC | 1D593 |
Z U+005A | 𝗭 U+1D5ED | 1D593 |
a U+0061 | 𝗮 U+1D5EE | 1D58D |
b U+0062 | 𝗯 U+1D5EF | 1D58D |
c U+0063 | 𝗰 U+1D5F0 | 1D58D |
d U+0064 | 𝗱 U+1D5F1 | 1D58D |
e U+0065 | 𝗲 U+1D5F2 | 1D58D |
f U+0066 | 𝗳 U+1D5F3 | 1D58D |
g U+0067 | 𝗴 U+1D5F4 | 1D58D |
h U+0068 | 𝗵 U+1D5F5 | 1D58D |
i U+0069 | 𝗶 U+1D5F6 | 1D58D |
j U+006A | 𝗷 U+1D5F7 | 1D58D |
k U+006B | 𝗸 U+1D5F8 | 1D58D |
l U+006C | 𝗹 U+1D5F9 | 1D58D |
m U+006D | 𝗺 U+1D5FA | 1D58D |
n U+006E | 𝗻 U+1D5FB | 1D58D |
o U+006F | 𝗼 U+1D5FC | 1D58D |
p U+0070 | 𝗽 U+1D5FD | 1D58D |
q U+0071 | 𝗾 U+1D5FE | 1D58D |
r U+0072 | 𝗿 U+1D5FF | 1D58D |
s U+0073 | 𝘀 U+1D600 | 1D58D |
t U+0074 | 𝘁 U+1D601 | 1D58D |
u U+0075 | 𝘂 U+1D602 | 1D58D |
v U+0076 | 𝘃 U+1D603 | 1D58D |
w U+0077 | 𝘄 U+1D604 | 1D58D |
x U+0078 | 𝘅 U+1D605 | 1D58D |
y U+0079 | 𝘆 U+1D606 | 1D58D |
z U+007A | 𝘇 U+1D607 | 1D58D |
Α U+0391 | 𝝖 U+1D756 | 1D3C5 |
Β U+0392 | 𝝗 U+1D757 | 1D3C5 |
Γ U+0393 | 𝝘 U+1D758 | 1D3C5 |
Δ U+0394 | 𝝙 U+1D759 | 1D3C5 |
Ε U+0395 | 𝝚 U+1D75A | 1D3C5 |
Ζ U+0396 | 𝝛 U+1D75B | 1D3C5 |
Η U+0397 | 𝝜 U+1D75C | 1D3C5 |
Θ U+0398 | 𝝝 U+1D75D | 1D3C5 |
Ι U+0399 | 𝝞 U+1D75E | 1D3C5 |
Κ U+039A | 𝝟 U+1D75F | 1D3C5 |
Λ U+039B | 𝝠 U+1D760 | 1D3C5 |
Μ U+039C | 𝝡 U+1D761 | 1D3C5 |
Ν U+039D | 𝝢 U+1D762 | 1D3C5 |
Ξ U+039E | 𝝣 U+1D763 | 1D3C5 |
Ο U+039F | 𝝤 U+1D764 | 1D3C5 |
Π U+03A0 | 𝝥 U+1D765 | 1D3C5 |
Ρ U+03A1 | 𝝦 U+1D766 | 1D3C5 |
ϴ U+03F4 | 𝝧 U+1D767 | 1D373 |
Σ U+03A3 | 𝝨 U+1D768 | 1D3C5 |
Τ U+03A4 | 𝝩 U+1D769 | 1D3C5 |
Υ U+03A5 | 𝝪 U+1D76A | 1D3C5 |
Φ U+03A6 | 𝝫 U+1D76B | 1D3C5 |
Χ U+03A7 | 𝝬 U+1D76C | 1D3C5 |
Ψ U+03A8 | 𝝭 U+1D76D | 1D3C5 |
Ω U+03A9 | 𝝮 U+1D76E | 1D3C5 |
∇ U+2207 | 𝝯 U+1D76F | 1B568 |
α U+03B1 | 𝝰 U+1D770 | 1D3BF |
β U+03B2 | 𝝱 U+1D771 | 1D3BF |
γ U+03B3 | 𝝲 U+1D772 | 1D3BF |
δ U+03B4 | 𝝳 U+1D773 | 1D3BF |
ε U+03B5 | 𝝴 U+1D774 | 1D3BF |
ζ U+03B6 | 𝝵 U+1D775 | 1D3BF |
η U+03B7 | 𝝶 U+1D776 | 1D3BF |
θ U+03B8 | 𝝷 U+1D777 | 1D3BF |
ι U+03B9 | 𝝸 U+1D778 | 1D3BF |
κ U+03BA | 𝝹 U+1D779 | 1D3BF |
λ U+03BB | 𝝺 U+1D77A | 1D3BF |
μ U+03BC | 𝝻 U+1D77B | 1D3BF |
ν U+03BD | 𝝼 U+1D77C | 1D3BF |
ξ U+03BE | 𝝽 U+1D77D | 1D3BF |
ο U+03BF | 𝝾 U+1D77E | 1D3BF |
π U+03C0 | 𝝿 U+1D77F | 1D3BF |
ρ U+03C1 | 𝞀 U+1D780 | 1D3BF |
ς U+03C2 | 𝞁 U+1D781 | 1D3BF |
σ U+03C3 | 𝞂 U+1D782 | 1D3BF |
τ U+03C4 | 𝞃 U+1D783 | 1D3BF |
υ U+03C5 | 𝞄 U+1D784 | 1D3BF |
φ U+03C6 | 𝞅 U+1D785 | 1D3BF |
χ U+03C7 | 𝞆 U+1D786 | 1D3BF |
ψ U+03C8 | 𝞇 U+1D787 | 1D3BF |
ω U+03C9 | 𝞈 U+1D788 | 1D3BF |
∂ U+2202 | 𝞉 U+1D789 | 1B587 |
ϵ U+03F5 | 𝞊 U+1D78A | 1D395 |
ϑ U+03D1 | 𝞋 U+1D78B | 1D3BA |
ϰ U+03F0 | 𝞌 U+1D78C | 1D39C |
ϕ U+03D5 | 𝞍 U+1D78D | 1D3B8 |
ϱ U+03F1 | 𝞎 U+1D78E | 1D39D |
ϖ U+03D6 | 𝞏 U+1D78F | 1D3B9 |
0 U+0030 | 𝟬 U+1D7EC | 1D7BC |
1 U+0031 | 𝟭 U+1D7ED | 1D7BC |
2 U+0032 | 𝟮 U+1D7EE | 1D7BC |
3 U+0033 | 𝟯 U+1D7EF | 1D7BC |
4 U+0034 | 𝟰 U+1D7F0 | 1D7BC |
5 U+0035 | 𝟱 U+1D7F1 | 1D7BC |
6 U+0036 | 𝟲 U+1D7F2 | 1D7BC |
7 U+0037 | 𝟳 U+1D7F3 | 1D7BC |
8 U+0038 | 𝟴 U+1D7F4 | 1D7BC |
9 U+0039 | 𝟵 U+1D7F5 | 1D7BC |
This section is non-normative.
+ +MathML Core is based on MathML3. See the + appendix E + of [MathML3] for the people that contributed to that specification. +
+MathML Core was initially developed by the MathML Community Group, and + then by the Math Working Group. Working Group or Community Group + members who regularly participated in MathML + Core meetings during the development of this specification: + Brian Kardell, + Bruce Miller, + Daniel Marques, + David Carlisle, + David Farmer, + Deyan Ginev, + Frédéric Wang, + Louis Mahler, + Moritz Schubotz, + Murray Sargent, + Neil Soiffer, + Patrick Ion, + Rob Buis, + Steve Noble and + Sam Dooley. +
+ +In addition, we would like to extend special thanks to + Brian Kardell, + Neil Soiffer and + Rob Buis for help with the editing.
+Many thanks also to the following people for their help with the + test suite: + Brian Kardell, + Frédéric Wang, + Neil Soiffer and + Rob Buis. + Several tests are also based on MathML tests from browser + repositories and we are grateful to the Mozilla and WebKit + contributors. +
+We would like to thank the people who, through their input and + feedback on public communication channels, have helped us with the + creation of this specification: + André Greiner-Petter, + Anne van Kesteren, + Boris Zbarsky, + Brian Smith, + Elika Etemad, + Emilio Cobos Álvarez, + ExE Boss, + Ian Kilpatrick, + Koji Ishii, + L. David Baron, + Michael Kohlhase, + Michael Smith, + Ryosuke Niwa, + Sergey Malkin, + Tab Atkins Jr., + Viktor Yaffle and + frankvel. +
+ +This section is non-normative.
+ ++ This specification adds script execution mechanisms via the + MathML event handler attributes described in + 2.1.3 Global Attributes. UAs may decide to prevent execution + of scripts specified in these attributes, following the same + security restrictions as those applying to HTML or SVG elements. +
+In [MathML3], it was possible to make any element linkable
+ via href
or xlink:href
attributes, with
+ an URL pointing to an untrusted resource or even
+ javascript:
execution. These attributes are not
+ available in MathML Core. However, as described in
+ 2.2.1 HTML and SVG it is possible to embed
+ HTML or SVG content inside MathML, including HTML or SVG links.
+
In [MathML3], it was possible to use the
+ maction
element with
+ the actiontype
value set to "statusline"
+ in order to override the text of the browser statusline. In particular,
+ an attacker could use this
+ to hide the URL text of an untrusted link e.g.
<math>
+ <maction actiontype="statusline">
+ <mtext><a href="javascript:alert('JS execution')">Click me!</a></mtext>
+ <mtext>./this-is-a-safe-link.html</mtext>
+ </maction>
+</math>
+
+ This feature is not available in MathML Core, where
+ the maction
element essentially behaves
+ like an mrow
container with extra style.
An attacker can try to hang the UA by inserting very large
+ stretchy operators, effectively making the algorithm
+ shaping of the glyph assembly deal with a huge amount of
+ glyphs. UAs may work around this issue
+ by limiting rmin and
+ GlyphAssembly.partCount
to
+ maximum values.
As described in + CSS Fonts Module, + an attacker can try to rely on malformed or malicious fonts to + exploit potential security faults in browser implementations. + Because the OpenType MATH table + is used extensively in this specification, UAs should ensure their font + sanitization mechanisms are able to deal with that table.
+Finally, + in order to reduce attack surface, some UAs expose runtime options + to disable part of the web platform. Disabling MathML layout can + essentially be + achieved by forcing elements in the DOM tree to be put in the HTML + namespace and disabling 4. CSS Extensions for Math Layout. +
+This section is non-normative.
+ +
+ As explained in 2.2.1 HTML and SVG,
+ MathML can be embedded into an SVG image via the
+ <foreignObject>
+ element which can thus be used in a
+ canvas
+ element.
+ UA may decide to implement any measure to prevent potential
+ information leakage
+ such as tainting the canvas and returning a
+ "SecurityError
"
+ when one tries to access the canvas' content via JavaScript APIs.
+
+ In the following example, the canvas image is set to the image of
+ some MathML content with an HTML link to https://example.org/
.
+ It should not be possible for an attacker to determine whether that
+ link was visited by reading pixels via context.
.
+ For more about links in MathML, see
+ E. Security Considerations.
+ getImageData
()
let svg = `
+ <svg xmlns="http://www.w3.org/2000/svg" width="100px" height="100px">
+ <foreignObject width="100" height="100"
+ requiredExtensions="http://www.w3.org/1998/Math/MathML">
+ <math xmlns="http://www.w3.org/1998/Math/MathML">
+ <msqrt style="font-size: 25px">
+ <mtext>■</mtext>
+ <mtext><a href="https://example.org/">■</a></mtext>
+ </msqrt>
+ </math>
+ </foreignObject>
+ </svg>`;
+let image = new Image();
+image.width = 100;
+image.height = 100;
+image.onload = () => {
+ let canvas = document.createElement('canvas');
+ canvas.width = 100;
+ canvas.height = 100;
+ canvas.style = "border: 1px solid black";
+ document.body.appendChild(canvas);
+ let context = canvas.getContext("2d");
+ context.drawImage(image, 0, 0);
+};
+image.src = `data:image/svg+xml;base64,${window.btoa(svg)}`;
+
+ This specification describes layout of DOM
+ elements which may involve system
+ fonts. Like for HTML/CSS layout,
+ it is thus possible to use JavaScript APIs
+ (e.g.
+ context.
on content embedded in a canvas context, or even just
+ getImageData
()
getBoundingClientRect
()
)
+ to measure box sizes and positions and infer data from system fonts.
+ By combining miscellaneous tests on such fonts and
+ comparing measurements against results of well-known fonts, an attacker
+ can try and determine the default fonts of the user.
+
The following
+ HTML+CSS+JavaScript document relies on a Web font with exotic metrics
+ to try and determine whether A Well Known System Font
+ is available by default.
<style>
+ @font-face {
+ font-family: MyWebFontWithVeryWideGlyphs;
+ src: url("/fonts/my-web-fonts-with-very-wide-glyphs.woff");
+ }
+ #container {
+ font-family: AWellKnownSystemFont, MyWebFontWithVeryWideGlyphs;
+ }
+</style>
+<div id="container">SOMETEXT</div>
+<div id="reference">SOMETEXT</div>
+<script>
+document.fonts.ready.then(() => {
+ let containerWidth =
+ document.getElementById("container").getBoundingClientRect().width;
+ let referenceWidth =
+ document.getElementById("reference").getBoundingClientRect().width;
+ let isWellKnownSystemFontAvailable =
+ Math.abs(containerWidth - referenceWidth) < 1;
+});
+</script>
+ The following + HTML+CSS+JavaScript document tries to determine whether the + UI serif font provides Asian glyphs:
+<style>
+ @font-face {
+ font-family: MyWebFontWithVeryWideAsianGlyphs;
+ src: url("/fonts/my-web-fonts-with-very-wide-asian-glyphs.woff");
+ }
+ #container {
+ font-family: ui-serif, MyWebFontWithVeryWideAsianGlyphs
+ }
+ #reference {
+ font-family: MyWebFontWithVeryWideAsianGlyphs;
+ }
+</style>
+<div id="container">王</div>
+<div id="reference">王</div>
+<script>
+document.fonts.ready.then(() => {
+ let containerWidth =
+ document.getElementById("container").getBoundingClientRect().width;
+ let referenceWidth =
+ document.getElementById("reference").getBoundingClientRect().width;
+ let uiSerifFontDoesNotContainAsianGlyph =
+ Math.abs(containerWidth - referenceWidth) < 1;
+});
+</script>
+ The following
+ HTML+CSS document contains the same text rendered with
+ text-decoration-thickness set to from-font
and 1em
(here
+ 100 pixels)
+ respectively. By comparing the heights of the two underlines,
+ one can calculate a good approximation of the
+ underlineThickness
value from the PostScript Table
+ [OPEN-FONT-FORMAT].
+
<style>
+ #test {
+ font-size: 100px;
+ }
+ #container {
+ text-decoration-line: underline;
+ text-decoration-thickness: from-font;
+ }
+ #reference {
+ text-decoration-line: underline;
+ text-decoration-thickness: 1em;
+ }
+</style>
+<div id="test">
+ <div id="container">SOMETEXT</div>
+ <div id="reference">SOMETEXT</div>
+</div>
+ This specification relies on information from
+ 5. OpenType MATH
table to render MathML content. One
+ can get good approximation of most
+ layout parameters from MathConstants
and
+ MathGlyphInfo
using measurement
+ techniques similar to what is described above for
+ HTML+CSS+JavaScript document. The use of the MathVariants
+ table for MathML rendering can also be observed by putting stretchy
+ operators of different sizes inside a canvas
context.
Although none of these parameters taken individually are personal, + implementing this specification increases the set of exposed + font information that can be used by an attacker to implement + fingerprinting techniques. Typically, they could help determine + available and preferred math fonts for a user. +
++ Conformance requirements are expressed with a combination of + descriptive assertions and RFC 2119 terminology. The key words “MUST”, + “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, + “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this + document are to be interpreted as described in RFC 2119. + However, for readability, these words do not appear in all uppercase + letters in this specification. +
++ All of the text of this specification is normative except sections + explicitly marked as non-normative, examples, and notes. + [RFC2119] +
+
+ Examples in this specification are introduced with the words
+ “for example” or are set apart from the normative text with
+ class="example"
, like this:
+
+ This is an example of an informative example. +
+
+ Informative notes begin with the word “Note” and are set apart from
+ the normative text with class="note"
, like this:
+
+ Note, this is an informative note. +
+ Advisements are normative sections styled to evoke special attention
+ and are set apart from other normative text with
+ <strong class="advisement">
, like this:
+ UAs MUST provide an accessible alternative.
+
Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+Referenced in:
+Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+ +Referenced in:
+Referenced in:
+