MathML标记语言, 数学公式(二)入门

准备

对于MathML来说下载一款支持MathML Api的游览器既可,如果你不知道那些游览器支持(通过此传送门查看),并选择一个线上编译器(jsrun、glitch)/vscode、webstorm你喜欢就行。

我们的第一个MathML

不用理解它们的作用, 先创建一个MathML简单实例,后面我们逐一再讨论它们的意义,现在起来是这样的:

<!DOCTYPE html>
<html>
   <head>
      <meta charset="UTF-8">
   </head>
   <body>
      <math xmlns="http://www.w3.org/1998/Math/MathML">
         <mrow>
            <msup><mi>a</mi><mn>2</mn></msup>
            <mo>+</mo>
            <msup><mi>b</mi><mn>2</mn></msup>
            <mo>=</mo>
            <msup><mi>c</mi><mn>2</mn></msup>
         </mrow>
      </math>
   </body>
</html>

运行的结果:,看起运行的结果还不错。

xmlns

我们通过简单例子我们发现MathML的基本“语法”是使用XML语法定义的;math作为顶层元素,math 的命名空间为”http://www.w3.org/1998/Math/MathML”,如果xmlns单独使用该属性时,它将为显示该属性的元素以及所有子元素设置默认的名称空间。例如这样:

<math xmlns =“ http://www.w3.org/1998/Math/MathML”>
<mrow> ... </ mrow>
</ math>

xmlns属性用作前缀时,它声明一个前缀,然后可以将该前缀用于显式将其他元素和属性与特定名称空间关联, 写成 :

<body xmlns:m =“ http://www.w3.org/1998/Math/MathML”>
...
<m:math> <m:mrow> ... </ m:mrow> </ m:math>
...
</ body>

大都数MathML元素都充当“容器”,只是作为子元素列表中的单个成员,对元素可以具有的子级数没有限制。

mrow

而mrow作为表达式中的分组,就像它们在数学解释时的分成一行行一样。正确的分组有助于表达式的呈现,具体体现在以下几个方面:

  • 如果有需要,它会改变间距来改善显示效果。
  • 它允许采用更明智的断行和缩进算法。
  • 通过自动化系统,如计算机代数系统和音频渲染器(automated systems such as computer algebra systems and audio renderers),它能简化表达式的解释(interpretation)过程。

msup、msub

数字标记上标与下标,这与我们html中的sub、sup相似,相比它们属性支持更少。

msup – 、 msub – x1

mi

呈现为标识符,例如函数名,变量或符号常量。您还可以在其中包含任意文本以标记术语。

mn

表示数字文字,通常为带有可能的分隔符(点或逗号)的数字序列。但是,也可以在其中包含实际上是数字的任意文本,例如“十一”(其实就随便写啦,  只是mn应该表示“数字”, 某种约束)。

<math> 
  <mn> 0 </mn>
  <mn> 1.337 </mn>
  <mn> twelve </mn>
  <mn> XVI </mn>     
  <mn> 2e10 </mn> 
</math>

mo

广义上表示一个运算符。除了具有严格数学意义的运算符外,此元素还包括“运算符”(例如括号),分隔符(例如逗号和分号)或“绝对值”条。

MathML支持

表示法 描述
decimal-digit 从U+0030到U+0039的十进制数字
hexadecimal-digit 从U+0030到U+0039、U+0041到U+0046和U+0061到U+0066的十六进制
unsigned-integer 十进制数字的字符串,表示非负整数
positive-integer 十进制数字串,但不完全由“0”s(U+0030)组成,表示正整数
integer 一个可选的“-”(U+002D),后跟一个十进制数字串,表示一个整数
unsigned-number 一个十进制数字串,最多有一个小数点(U+002E),表示一个非负的终止十进制数(一种有理数)
number 一个可选的前缀“-”(U+002D),后跟一个无符号数字,表示一个终止的十进制数(一种有理数)
character 单个非空白字符
string 任意的,非空和有限的,串字符小号
length 长度,

单元 描述
em 一个em(传统上用于水平长度的字体相对单位)
ex 一个ex(传统上用于垂直长度的字体相对单位)
px 像素或当前显示中像素的大小
in 英寸(1英寸= 2.54厘米)
cm 厘米
mm 毫米
pt 点(1点= 1/72英寸)
pc 皮卡(12点= 12点)
% 默认值的百分比
unit
Type Syntax
length number | number unit | namedspace
namedlength 命名长度
color 颜色,

Type Syntax
color #RGB | #RRGGBB | html-color-name
id 在文档中唯一的标识符;必须满足XML建议[XML]的NAME语法
idref 引用文档中另一个元素的标识符;必须满足XML建议[XML]的名称语法
URI 统一资源标识符[RFC3986]。注意,属性值在模式中被输入为anyURI,它允许任何XML字符序列。需要将此字符串用作URI的系统必须使用%HH编码对URI中不允许使用的任何字符的UTF-8编码字节进行编码,其中HH是十六进制的字节值。这确保了这样的属性值可以被解释为IRI,或者更一般地说是LEIRI,参见[IRI]。
italicized word 每个属性的文本中说明的值
“literal” 带引号的符号,按字面意思出现在属性值中(例如“+”或“+”)

参考:

  • https://www.runoob.com/html/html5-mathml.html
  • https://www.w3.org/TR/MathML3/

暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注


Cabbagelol将做些什么
负责记录Cabbagelol的总结,或者共享有趣的内容,这就是后院的最重要做的事情⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄。
备案:粤ICP备15107172号-1
邮箱:nickmiku@foxmail.com

Copyright © 2015 - 2017 Cabbagelol. All Rights Reserved. Powered By Wordpress(EverBox).