如何用DDoc显示数学方程式?

时间:2016-09-15 14:43:37

标签: d ddoc

我想在使用DDoc的文档中使用数学公式。什么是让它看起来很好的好方法?

类似的东西:

/**
 * Returns x + sqrt(2).
 */
double add_sqrttwo(double x) {
    return x + sqrt(2);
}

3 个答案:

答案 0 :(得分:2)

您可以导入MathJax,然后将数学放在\( \)\[ \]之间。

一个例子:

/**
* Macros:
* DDOC =
* <!DOCTYPE html>
* <html lang="en-US">
* <head>
* <script type="text/javascript" async src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-MML-AM_CHTML"></script>
* <title>$(TITLE)</title>
* </head>
* <body><h1>$(TITLE)</h1>$(BODY)</body>
* </html>
*
*/

module example;

import std.math;

/**
 * Jay! \( a + \sqrt{2} \)
 *
 * You must prefix parameter names with an underscore: \( _x + \sqrt{2} \).
 * 
 */
double add_sqrttwo(double x) {
    return x + sqrt(2.0);
}

答案 1 :(得分:1)

我担心DDOC本身不能这样做。 你必须使用例如Javascript来完成此任务或将它们预生成为图像。

答案 2 :(得分:0)

如果你的目标是HTML,那么有一些选项,虽然没有ddoc本身:你可以链接到公式(<img src="...">)的图像,你可以在它周围放置标签并稍后处理(无论是生成步骤中的后处理器还是Web上的Javascript库),或者您可以尝试在文档https://developer.mozilla.org/en-US/docs/Web/MathML/Authoring中编写MathML ...

您也可以尝试使用returns X + √2之类的各种unicode字符,但这些字符也非常有限。

但所有这些都在解决ddoc,而不是它。 ddoc无法独立完成。