3

我正在编写将使用 Sphinx 呈现为 HTML 和 PDF 的 reST 文档。我的源文件是 UTF-8,并且希望我的 HTML 显示为 UTF-8。

写乘号的最佳做法是什么?

即:×,不是x。

我知道我可以将它作为 Unicode 字符插入。如果我正在编写 LaTeX,我会使用\times. 在 HTML 中有×. 当我使用 Sphinx 渲染所有内容时,简单的 Unicode 是否能够在转换过程中正常运行?即使我渲染成其他更奇特的格式?

我只是想仔细检查一下这不会在某处绊倒。

4

4 回答 4

4

事实证明,Sphinx 文档包含了答案,我只是读得还不够远:

由于在 reST 中包含特殊字符(如破折号或版权符号)的最简单方法是将它们直接写为 Unicode 字符,因此必须指定编码。Sphinx 假定源文件默认以 UTF-8 编码;您可以使用 source_encoding 配置值更改它。

https://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html#source-encoding

编辑: 只是在这里跟进:虽然乘法符号工作得很好,但 LaTeX 中使用的默认字体(以及 PDF)中缺少许多其他看似标准的 unicode 符号(小于或等于,大于或等于)渲染。

于 2011-06-16T10:11:38.683 回答
3

我会在 rst 中使用 MathML:math:`m \times p`

于 2013-01-09T04:00:48.923 回答
3

要添加到@Paul McMillan 的答案,如果您尝试将 sphinx 文档作为乳胶 pdf 发布,您通常可以通过在conf.py序言中包含缺少的 unicode 符号来解决:

_PREAMBLE = r"""
\usepackage[utf8]{inputenc}
\DeclareUnicodeCharacter{00D7}{\times}
"""

latex_elements = {
    'preamble': _PREAMBLE,
}

00D7unicode 编码在哪里,\times是您希望在乳胶中替换它的内容。

您可以在文件格式网站上找到您的字符的 unicode 编码。

更多信息在这里这里

于 2015-04-10T20:05:13.880 回答
0

|times|使用后有什么问题.. include:: <isonum.txt>

来自http://docutils.sourceforge.net/0.6/docutils/parsers/rst/include/isonum.txt

.. |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
于 2017-10-05T18:49:23.810 回答