我一直在用Markdown做课堂笔记,它很棒。我甚至在Markdown上做了一些预处理,这样我就可以做表格之类的事情。但这学期我要教一门数学课程,我希望能够将LaTeX公式与Markdown一起使用,就像这样:
The refinement relation is written $a \sqsubseteq b$, which can be
pronounced "$a$ approximates $b$" or "$b$ is at least as defined as $a$".
我希望能够将LaTeX的每个片段预处理为一个不错的反锯齿PNG文件,然后通过HTML <img>标记将其包含在我的Markdown中。但我完全不知道如何获取LaTeX的片段并得到一张漂亮的图像
有正确的边界框吗
是平滑
我只知道如何获得DVI、PostScript或PDF格式的完整页面。
我相信这个问题已经解决了,但我还没能猜出正确的搜索词。有什么建议如何解决它或在哪里寻找现有的解决方案?
编辑:在安装了mathTeX之后,我可以说代码是不灵活的,它违反了Linux文件系统层次结构标准,而且它是业余工作——从这个词的好坏两方面来看都是如此。代码非常复杂,没有明显的错误。我会寻找替代方案。
此外,很明显,在底层,解决方案是基于dvipng的。
一年后:我从来没有得到我一直希望的无缝整合,但我在自己设计的剧本上蹒跚前行。事实证明,使用dvips -E和ImageMagick的转换程序而不是dvipng更容易一些。这样做的好处是可以更好地控制缩放等事情,并且可以轻松地制作透明的背景。
好奇的人可以看看这个例子。
我不能向任何人推荐这个解决方案。但我也不推荐MathTeX。
将以下代码添加到Markdown文件的顶部,以获得MathJax呈现支持
<style TYPE="text/css">
code.has-jax {font: inherit; font-size: 100%; background: inherit; border: inherit;}
</style>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'], ['\\(','\\)']],
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'] // removed 'code' entry
}
});
MathJax.Hub.Queue(function() {
var all = MathJax.Hub.getAllJax(), i;
for(i = 0; i < all.length; i += 1) {
all[i].SourceElement().parentNode.className += ' has-jax';
}
});
</script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-AMS_HTML-full"></script>
然后' $x^2$ '或' $$x^2$$ '将按预期呈现:-)
如果您不想使用在线发行版,您总是可以安装MathJax的本地版本,但您可能需要通过本地web服务器托管它。
更新:这些天我只使用pandoc而不是规范markdown,但上面仍然有用。
将以下代码添加到Markdown文件的顶部,以获得MathJax呈现支持
<style TYPE="text/css">
code.has-jax {font: inherit; font-size: 100%; background: inherit; border: inherit;}
</style>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
tex2jax: {
inlineMath: [['$','$'], ['\\(','\\)']],
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre'] // removed 'code' entry
}
});
MathJax.Hub.Queue(function() {
var all = MathJax.Hub.getAllJax(), i;
for(i = 0; i < all.length; i += 1) {
all[i].SourceElement().parentNode.className += ' has-jax';
}
});
</script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.4/MathJax.js?config=TeX-AMS_HTML-full"></script>
然后' $x^2$ '或' $$x^2$$ '将按预期呈现:-)
如果您不想使用在线发行版,您总是可以安装MathJax的本地版本,但您可能需要通过本地web服务器托管它。
更新:这些天我只使用pandoc而不是规范markdown,但上面仍然有用。