mathjax v2.1的新功能

mathjax v2.1主要是一个bug修复版本。许多显示错误、断线问题和接口问题都已解决。以下列表指出了此版本修复的大多数错误。

界面

  • 使nativemml输出正确处理ios双击并保持,切换到nativemml输出时发出警告消息。

  • 使用 scrollIntoView 处理 positionToHash 而不是设置文档位置以防止在mathjax完成数学处理后刷新页面。

  • 当链接指向svg输出中的元素时,处理哈希url的定位。

  • 制作 href 在所有浏览器中以SVG模式工作。

  • 修复在WebKit中打开“ShowMath as”窗口的问题(受影响的Chrome18和Safari5.1.7)。

  • 使用mathjax消息区域而不是窗口状态行 maction 具有 actiontype='statusline' 以避免某些浏览器中的安全限制。

  • 修正了将数学缩放框放在前一行末尾的问题。

  • 修复IE在页面完全可用之前尝试键入页面的问题,从而导致页面上的所有数学都无法排版(或在某些情况下 any 数学上)。

  • 允许在设置刻度的对话框中使用十进制刻度值。

  • 修复svg输出,以便设置比例将重新调整现有的数学。

  • 将“关闭”按钮添加到“关于”框,而不使“单击”框将其关闭(仅单击按钮)。

  • 当使用otf字体时,使about框显示“woff或otf”(因为两者都是请求的)。

  • 当输入jax发生内部故障而没有生成任何元素jax时,让输出jax正确跳过数学运算。

  • 生产 MathJax.Hub 信号何时 [Math Processing Error] 是生成的。

断线

  • 修正了SVG输出在换行时消失的问题,因为方程号也存在。

  • <mspace> 是导致换行的修饰运算符。

  • 允许在 <msubsup> 使super和subscripts与基的最后一行保持一致。

  • 固定 <mfenced> 这样当它包含换行符时,分隔符和分隔符不会丢失。

  • 允许在元素的分隔符和分隔符处换行。

  • 修复某些线条超出最大宽度时的换行问题。

  • 解决内部断线问题 <semantics> 元素。

  • 修复了行中断的问题,其中使用了不正确的宽度来确定断点惩罚,因此一些长行没有被中断。

HTML-CSS/SVG显示

  • 修复几个镀铬对齐和大小调整问题,包括根部顶部水平线的问题、分数线太长等。

  • 解决在浏览器中设置最小字体大小时为数学公式保留多少空间的问题。

  • 强制重新测量最终的数学跨度,以确保容器大小正确。

  • 修复中的对齐问题 <msubsup> .

  • 修正rowalalign值错误时的处理错误。

  • 在HTML-CSS中解决了在mtables中使用拉伸元素的垂直放置问题,并提高了放置扩展字符的性能。

  • 手柄间距为U+2061(功能适用)更佳。

  • 更好地处理HTML-CSS和SVG输出中的prime和其他伪脚本。

  • 修正了 <mmultiscripts> 在SVG模式下,导致处理错误消息。

  • 修复错位 \vec 歌剧和IE中的箭头。

  • 制作 <mi> 有一封以上的信 texClass 在某些情况下是op而不是ord,因此它将空间作为一个函数。

  • 使HTML代码段处理程序接受字符串作为内容,即使不包含在大括号中。

  • 固定有幂函数的间距(例如, \sin^2 x

  • 修复SVG处理的问题 \liminf\limsup 函数名的后半部分被删除。

  • 修正了当公式处理被中断以加载文件时,HTML-CSS和SVG输出可能会将部分公式留在DOM中的问题。

  • 解决问题 <mtable><ms><mmultiscripts> 不是处理风格。

  • 使列宽和行高在 <mtable> .

  • 固定键入 handle-floats.js 这导致它无法编译。

  • 修复HTML-CSS输出中的问题 <msubsup> 当超级或下标具有显式样式时。

tex仿真

  • 允许负尺寸 \\[] 但是剪辑到0,因为在mathml中这是不允许的。

  • 修复了以下问题:,空格后跟 [ would incorrectly be interpretted as \[dimen] .

  • 制作 jsMath2jax 在其他预处理器之前运行,以便 tex2jax 在jsmath2jax看到环境之前,不会从jsmath跨度和div中获取环境。

  • 解决问题 \vec 没有产生正确的字符 \vec{{\mathbf{{B}}}} 以及类似的构造。

  • 将多个素数组合成单个Unicode字符。

  • 更新了用于某些重音符号和一些其他字符的Unicode字符,使其成为更合适的选择。请参阅github上mathjax问题跟踪程序中的问题116、119和216。

  • eqnarray columnwidth 价值观。

  • 启用编号后,使eqnarray执行公式编号。

  • 使纵向有弹性的字符站在基线上,并改进一些有弹性的字符的间距。

  • 制作 mtextFontInherit 使用数学中指定的样式和权重,以便 \textbf\textit 会正常工作的。

  • 添加 \textcolor 宏到颜色扩展名。

  • 在颜色扩展中添加了rgb颜色模型。

  • 根据需要自动加载amsmath扩展名 mhchem 延伸。

  • 添加 <<=> 箭头到 mhchecm 延伸

  • 固定处方对齐 mhchem 正确调整脚本。

  • mhchem 延伸。

  • 制作 autoload-all 跳过已加载的扩展,而不重新定义用户定义的宏。

  • 修复大多数扩展以在加载扩展时不覆盖用户定义的宏。

  • 忽略 \label{{}} 没有标签。

  • 制作 \injlim 和朋友一起制作单曲 <mi> 元素的名称,而不是每个字母一个。

  • 像在tex输入jax中处理实数tex一样,处理带上标的素数。

  • 再处理几个负数(例如,箭头的负数)来为它们生成正确的Unicode点。

  • \limits 在没有前面的运算符的情况下使用。

mathml处理

  • 阻止启用对齐属性 <mtable> 从申请到 <mover>/<munder>/<munderover> 元素。

  • 忽略 _moz-math-* mathml输入中的属性,因此它们不会出现在mathml输出中。

  • 防止重复 xmlns “show math as->mathml”中的属性。

  • 修正了mathml输出中的一个问题,其中 <mpadded> 领先的+可能会失去正数,变成绝对的而不是相对的。

  • 固定 setTeXclass 对于 TeXatom 以便正确处理关系的间距。

  • 添加更多css以隔离 NativeMML 从第页输出。

  • 更好地为ie10处理mathplayer的设置,避免在为mathml设置文档名称空间时出现ie10错误。

字体

  • 修复粗体脚本在Stix字体中无法正常工作的问题。

  • 使用影响某些组合字符的mathjax web字体解决chrome错误。

  • 删除tex->mathml转换对字体选择的依赖关系(tex与stix)。

  • 对于mathjax字体中没有单个字符版本的可拉伸字符,请确保它们在未拉伸或拉伸到较小大小时大小正确。

  • 使用修复错误 U+u005E (^)这使得它在用作弹性重音时显示为加号。

  • 修正了一个问题,希腊字母在Stix字体产生错误的字母(偏移被关闭了一个)。

  • 处理无衬线斜体和粗体斜体Stix字体中的更多字符。