在我调查之后,我发现mathjax可以做到这一点。但是当我在markdown文件中写一些例子时,它无法显示正确的公式:
我已将其添加到markdown文件的头部:
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=default"></script>
输入mathjax语句:
(E = mc ^ 2),$$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}。$$
但github没有为数学符号显示任何内容!请帮帮我,谢谢! 告诉我如何在一般的github markdown中显示数学符号。
答案 0 :(得分:119)
但github没有为数学符号显示任何内容!请帮帮我,谢谢!
GitHub markdown解析由 SunDown (ex libUpSkirt)库执行。
该库的座右铭是“符合标准,快速, 安全 降价处理库在C”。考虑到你的问题:)重要的一句是“安全”。
实际上,允许执行javascript会有点像MarkDown标准的文本到HTML合同。
此外,看起来像HTML标记的所有内容都会被转义或删除。
告诉我如何在一般的github markdown中显示数学符号。
您最好的选择是找到类似于 yuml.me 的网站,该网站可以通过解析提供的网址查询字符串来生成即时图片。
我发现有些网站为用户提供此类服务: codedogs.com (似乎不再支持嵌入)或 {{3} } 即可。 你可能想尝试一下。当然,其他人可能存在,一些Google-fu会帮助你找到它们。
给出以下markdown语法
![equation](http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)
它将显示以下图像
注意:为了正确显示图片,您必须确保网址的查询字符串部分为 equation http://www.sciweavers.org/tex2img.php?eq=1%2Bsin%28mc%5E2%29&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit= 。您可以轻松找到可帮助您完成该任务的在线工具,例如 percent encoded
答案 1 :(得分:45)
Markdown支持内联HTML。内联HTML既可用于快速和简单的内联方程,也可用于外部工具,更复杂的渲染。
对于快速简单的内联项,请使用HTML&符号entity codes。将此想法与降价标记中的下标文本组合的示例是:h θ(x)=θ o x +θ 1 x,代码以下是。
h<sub>θ</sub>(x) = θ<sub>o</sub> x + θ<sub>1</sub>x
可以找到常见数学符号的HTML&符号实体代码here。希腊字母代码here。
虽然这种方法有局限性,但它几乎适用于所有降价,并且不需要任何外部库。
如果您的需求更大,请使用像CodeCogs这样的外部LaTeX渲染器。使用CodeCogs editor创建等式。选择svg进行渲染,为嵌入代码选择HTML。 Svg在调整大小时效果很好。 HTML允许在查看源代码时轻松读取LaTeX。复制页面底部的嵌入代码并将其粘贴到markdown中。
<img src="https://latex.codecogs.com/svg.latex?\Large&space;x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" title="\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}" />
GitHub 仅支持somtimes使用上面的原始html语法为我提供可读的LaTeX。如果上述方法不适用于您,则另一个选择是选择 URL Encoded 呈现并使用该输出手动创建如下链接:
![\Large x=\frac{-b\pm\sqrt{b^2-4ac}}{2a}](https://latex.codecogs.com/svg.latex?x%3D%5Cfrac%7B-b%5Cpm%5Csqrt%7Bb%5E2-4ac%7D%7D%7B2a%7D)
这会在alt图像文本中手动合并LaTex,并使用编码的URL在GitHub上进行渲染。
如果您需要多行渲染,请查看此answer。
答案 2 :(得分:12)
现在是2020年,让我总结一下对源代码存储库主机提供数学公式渲染的支持情况。
GitHub和Bitbucket 仍然不支持呈现数学公式,无论它是默认的分隔符还是其他分隔符。
Bitbucket Cloud / BCLOUD-11192 -- Add LaTeX Support in MarkDown Documents (BB-12552)
GitHub / markup -- Rendering math equations
GitHub / markup -- Support latex
GitHub Community Forum -- [FEATURE REQUEST] LaTeX Math in Markdown
talk.commonmark.org -- Can math formula added to the markdown
GitHub近年来几乎没有取得任何实质性进展。
已经支持GitLab,但不是最常用的方法。它使用自己的定界符。
This math is inline $`a^2+b^2=c^2`$.
This is on a separate line
```math
a^2+b^2=c^2
```
A Markdown parser used by Hugo
使用Web API根据 A hack for showing LaTeX formulas in GitHub markdown进行渲染,您甚至可以编写jupyter笔记本。
答案 3 :(得分:8)
另一种解决方法是使用jupyter笔记本并在单元格中使用降价模式来渲染方程式。
基本的东西似乎完美无缺,就像中心方程一样
\begin{equation}
...
\end{equation}
或内联方程
$ \sum_{\forall i}{x_i^{2}} $
虽然,我真正想要的其中一个函数在github中根本没有渲染\mbox{}
,这是一个无赖。但是,总而言之,这是在github上渲染方程式的最成功方法。
答案 4 :(得分:6)
如果您只是想在自己的浏览器中显示数学,可以尝试使用Chrome扩展程序GitHub with MathJax。这很方便。
答案 5 :(得分:3)
虽然GitHub不会解释MathJax公式,但您可以自动生成一个新的Markdown文档,其中公式被图像替换。
我建议您查看GitHub应用TeXify:
GitHub应用程序,用于查找扩展名为* .tex.md的文件,并将其TeX表达式呈现为SVG图像
工作原理(来自source repository):
无论什么时候推送,TeXify都会在上次提交时运行并搜索* .tex.md文件。对于其中的每一个,它将运行readme2tex,它将把美元符号之间的LaTeX表达式括起来,将其转换为普通的SVG图像,然后将输出保存到.md扩展文件中(这意味着名为README.tex.md的文件)将被处理,输出将保存为README.md)。之后,输出文件和新的SVG图像将被提交并推回到您的仓库。
答案 6 :(得分:2)
另一种可能是依赖 GitHub 自己的 notebook 渲染器。这甚至适用于 SO。
要呈现 x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2b}
,请使用以下 HTML img
标记:
<img src="https://render.githubusercontent.com/render/math?math=x_{1,2} = \frac{-b \pm \sqrt{b^2-4ac}}{2b}">
现场演示:
这种方法的优点在于您可以直接在 Markdown 中编辑您的公式,并且预览会相应地更新。
您可以通过编辑此答案来尝试一下。 (如果您的编辑没有添加到答案中,请丢弃您的编辑;))
来源:https://gist.github.com/a-rodin/fef3f543412d6e1ec5b6cf55bf197d7b
答案 7 :(得分:1)
“快速而肮脏”的解决方案是使用标准的 TeX 方程来维护标准的 .md 文件,例如_README.md
。
满意后,将整个文件通过Pandoc从标准Markdown
转换为Markdown (Github flavour)
,并将输出复制到README.md
。
您可以do this online快速周转,或在本地安装/配置 Pandoc。
答案 8 :(得分:1)
Mathcha 是一个复杂的数学编辑器,但它可用于呈现单个方程并将它们保存为纯 html,然后您可以将其作为内嵌 html 添加到您的文档中,或者您可以保存为 SVG 并作为图像插入。 https://www.mathcha.io/
答案 9 :(得分:1)
我刚刚发布了一个小 Chrome 应用程序 Purple Pi,它可以让您在 GitHub 页面和其他任何地方使用 LaTeX 数学,实际上甚至是 StackOverflow。
作为用户,您只需安装一次,作为页面作者,您只需在页面中包含一个激活链接。
答案 10 :(得分:0)
关于tex→图像转换,LaTeXiT工具可以产生更高质量的输出。我相信它是大多数TeX发行版的标准配置,但如果你还没有它,你当然可以在网上找到它。您需要做的就是将它放在TeX中,将图像拖到桌面上,然后从桌面拖动到图像托管站点(我使用imgur)。
答案 11 :(得分:0)
您的问题有很好的解决方案-使用TeXify github插件(由Tom Hale回答-但我在下面的给定链接中给出了他的答案)-有关此github插件的更多详细信息以及为什么这样做您可以在answer中找到一个很好的方法。
答案 12 :(得分:0)
我使用下面提到的过程将方程式转换为减价。这对我来说很好。非常简单!
比方说,我想代表矩阵乘法方程
从此处获取用于公式的脚本-https://csrgxtu.github.io/2015/03/20/Writing-Mathematic-Fomulars-in-Markdown/
我的示例:我想将Z(i,j)=X(i,k) * Y(k, j); k=1 to n
表示为求和公式。
引用该网站,所需的脚本为=> Z_i_j=\sum_{k=1}^{10} X_i_k * Y_k_j
使用URL编码器-https://www.urlencoder.org/将脚本转换为有效的URL
我的示例:
使用此网站通过将步骤2的输出复制粘贴到“ eq” 请求参数中-http://www.sciweavers.org/tex2img.php?eq=<b><i>paste-output-here</i></b>&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=
-我的示例:
http://www.sciweavers.org/tex2img.php?eq=Z_i_j=\sum_{k=1}^{10}%20X_i_k%20*%20Y_k_j&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=
使用markdown语法的参考图片-![alt text](enter url here)
-将此内容复制到您的减价中,您就可以了:
![Z(i,j)=X(i,k) * Y(k, j); k=1 to n](http://www.sciweavers.org/tex2img.php?eq=Z_i_j%3D%5Csum_%7Bi%3D1%7D%5E%7B10%7D%20X_i_k%20%2A%20Y_k_j&bc=White&fc=Black&im=jpg&fs=12&ff=arev&edit=)
答案 13 :(得分:-1)
我在标记文件的开头使用了以下内容
<script type="text/javascript" async
src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?
config=TeX-MML-AM_CHTML"
</script>
然后键入以下mathjax语句
$$ x_ {1,2} = \ frac {-b \ pm \ sqrt {b ^ 2-4ac}} {2b}。$$
对我有用