使用pandoc ruby将HTML和内联Mathjax数学转换为LaTeX
我正在构建一个Rails应用程序,我正在寻找一种方法将数据库条目与html和内联MathJax数学(TeX)转换为LaTeX以进行pdf创建。
我发现了类似我的类似问题:
- 使用pandoc将html mathjax转换为markdown
- 如何使用pandoc将带有mathjax的HTML转换为latex?
我在这里看到两个选项:
- 创建一个Haskell可执行文件,在将html转换为LaTeX时,只留下像
\(y=f(x)\)
这样的东西 - 编写一个执行以下操作的ruby方法:
- 取
string
并将其拆分为带有正则表达式的array
(string.split(regex)
) - 循环创建的
array
,如果内容匹配regex
将部分转换为LaTeX,不包括使用PandocRuby.html(string).to_latex
内联数学PandocRuby.html(string).to_latex
- 将所有内容连接在一起(
array.join
)
- 取
我更喜欢ruby方法解决方案,因为我在Heroku上托管我的应用程序,我不喜欢将二进制文件签入git。
注意: pandoc
二进制文件以这种方式实现http://www.petekeen.net/introduction-to-heroku-buildpacks )
所以我的问题是: regex
应该将string
分割为\(math\)
。
例如, string
可以如下所示: text \(y=f(x) \iff \log_{10}(b)\) and \(a+b=c\) text
并且为了完整起见,在转换为LaTeX时,如何编写Haskell脚本以留下\(math\)
并且ruby方法不是可能的解决方案?
获取最新版本的pandoc(1.12.2)。 那你可以做
pandoc -f html+tex_math_dollars+tex_math_single_backslash -t latex