我们经常会遇到在Markdown中插入数学公式的情况, 一种方法是利用MathJax渲染, 另外一种方法就是插入公式图片. 而怎么让 latex 编译输出图片格式(比如 png)呢?
Prerequisites
Windows
- GhostScript 下载网址: https://www.ghostscript.com/download/gsdnld.html
- ImageMagick 下载网址: http://www.imagemagick.org/script/download.php#windows
安装时勾选Install Legacy utilities(eg. convert)
选项. - 由于ImageMagick中的convert命令与MS中用于磁盘格式转换的convert命令冲突了, 所以我们需要将 ImageMagick 中的convert.exe 重命名为 imgconvert.exe
ImageMagick 可以将pdf的图片转化为各个图片格式, 而它需要调用的底层库是 GhostScript.
Archlinux
1 | sudo pacman -Syu ghostscipt imagemagick |
If you are facing a problem when pdf cannot convert to png saying
convert: attempt to perform an operation not allowed by the security policy
gs' @ error/delegate.c/ExternalDelegateCommand/378. convert: no images defined
Fig4-2.png’ @ error/convert.c/ConvertImageCommand/3273.
Just comment out all policy
fields inside <policymap>
in file /etc/ImageMagick-7/policy.xml
and it should work then.
Or you can directly use pdflatex -shell-escape name.tex
if you put convert
options inside documentclass
.
使用方法
英文文档 pdflatex
对于英文文档,使用 pdflatex
编译,可以直接转化png图片。
standalone.tex 文件格式举例:
1 | \documentclass[ |
当前文件夹下打开一个 Terminal:
1 | pdflatex -shell-escape standalone.tex |
结果会产生一个透明的standalone.png文件.
中文文档 xelatex
中文文档使用 xelatex 编译,转化分两步:
第一步,产生pdf文件;
第二步,将pdf转化成 png 或 svg。
standalone.tex 文件示例
1 | \documentclass{standalone} |
转 svg 命令:
1 | dvisvgm -P standalone.pdf |
转 png 命令:
1 | convert -density 300 standalone.pdf -quality 120 standalone.png |
png 文件解码
将文件拖拽到 Chrome 中, 打开开发者工具 > Sources, 点击文件, 全选复制显示的base64编码.
在Markdown中插入方法举例
1 | ![title][alt-text] |
评论
shortname
for Disqus. Please set it in_config.yml
.