Utf 8 如何在RestructedText(reST)中写入乘法符号?
我正在编写reST文档,这些文档将使用Sphinx呈现为HTML和PDF。我的源文件是UTF-8,希望我的HTML显示为UTF-8 写乘法符号的最佳实践是什么 也就是说:×,而不是x 我知道我可以将其作为Unicode字符插入。如果我在写LaTeX,我会使用Utf 8 如何在RestructedText(reST)中写入乘法符号?,utf-8,special-characters,python-sphinx,restructuredtext,Utf 8,Special Characters,Python Sphinx,Restructuredtext,我正在编写reST文档,这些文档将使用Sphinx呈现为HTML和PDF。我的源文件是UTF-8,希望我的HTML显示为UTF-8 写乘法符号的最佳实践是什么 也就是说:×,而不是x 我知道我可以将其作为Unicode字符插入。如果我在写LaTeX,我会使用\times。在HTML中有&次。当我使用Sphinx渲染所有内容时,简单的Unicode是否能够在转换过程中正常运行?即使我渲染到其他更奇特的格式 我只是想再次检查一下,这不会让事情在某个地方出错。结果是斯芬克斯文档包含了答案,我只是读得不
\times
。在HTML中有&次代码>。当我使用Sphinx渲染所有内容时,简单的Unicode是否能够在转换过程中正常运行?即使我渲染到其他更奇特的格式
我只是想再次检查一下,这不会让事情在某个地方出错。结果是斯芬克斯文档包含了答案,我只是读得不够远:
因为最简单的方法包括
特殊字符,如em破折号或
reST中的版权标志是直接
将它们写成Unicode字符,一个
必须指定编码。斯芬克斯
假定源文件以
默认情况下为UTF-8;你可以改变这个
使用源代码_编码配置值
编辑:
接下来:虽然乘法符号工作正常,但在LaTeX(以及PDF)渲染中使用的默认字体中缺少了许多其他看似标准的unicode符号(小于或等于,以及大于或等于) 我会在rst:math:`m\times p`
中使用MathML来补充@Paul McMillan的答案,如果您试图将sphinx文档发布为latex pdf,您通常可以通过在conf.py
序言中包含以下unicode符号来绕过缺少的unicode符号:
_PREAMBLE = r"""
\usepackage[utf8]{inputenc}
\DeclareUnicodeCharacter{00D7}{\times}
"""
latex_elements = {
'preamble': _PREAMBLE,
}
其中00D7
是unicode编码,而\times
是您希望在latex中用它替换的编码
您可以在网站上找到字符的unicode编码
更多信息和。使用后|次
有什么问题。。包括::
发件人:
LaTeX包newunicodechar
避免检查Unicode代码点:\newunicodechar{×}{\ensuremath{\times}}
。对于任何中等复杂的东西,这都是正确的方法。执行此操作时,请使用sphinx.ext.mathjax
扩展名。
.. |sup2| unicode:: U+000B2 .. SUPERSCRIPT TWO
.. |sup3| unicode:: U+000B3 .. SUPERSCRIPT THREE
.. |times| unicode:: U+000D7 .. MULTIPLICATION SIGN
.. |trade| unicode:: U+02122 .. TRADE MARK SIGN
.. |uarr| unicode:: U+02191 .. UPWARDS ARROW