markdown转为html及pdf
来源:互联网 发布:易幻网络待遇怎么样 编辑:程序博客网 时间:2024/06/05 20:09
markdown转为html
markdown转html比较容易些,有很多方法都可以做到。
1. 通过markdown编辑器导出
linux下常用的markdown编辑器有retext,haroopad等,这些软件都支持自定义css并导出html。以上软件的安装详见linux环境下Markdown编辑器汇总 。
2. 使用github上的开源项目
github上有许多优秀的开源项目都可以将markdown转为各种样式的html页面。
3. 使用pandoc
pandoc是进行文件类型转换的瑞士军刀,初次接触的同学可以体验下 Pandoc Demos。更多信息请查看Pandoc User’s Guide。
将markdown转为html很简单,直接执行以下命令即可。其中,”template.css”是自定义的模板。 pandoc README.md -c template.css -o README.html
markdown转为pdf
1. markdown->html->pdf
可以先将markdown转为html,具体方式见上小节。之后在浏览器中打开html并打印为pdf即可,不过这样得到的pdf总是有点模糊。
为知笔记支持自定义markdown格式(即自定义css),并支持导出html及pdf,效果堪称完美。见下图。更多markdown样式的模板详见markdown-css。
2. 使用pandoc
使用pandoc将markdown转为pdf需要首先安装LaTex,linux下建议安装TexLive,具体安装过程见Fedora21安装TexLive2015及Texstudio。
之后使用如下命令进行转换, pandoc test.md -o test.pdf --latex-engine=xelatex
打开输出文件却发现中文没有显示,那是因为Latex默认不支持中文,所以添加参数来指定字体为宋体,如下所示。更多参数详见Variables for LaTeX。 pandoc test.md -o test.pdf --latex-engine=xelatex -V mainfont=SimSun
这次的输出文件没有断行,此时必须使用模板了,首先输入一下命令导出默认模板 pandoc -D latex > template.tex
参考pm-template.latex,将”template.tex“文件中\else % if luatex or xelatex
到$if(mainfont)$
的部分修改为如下所示:
\else % if luatex or xelatex % SUPPORT for Chinese \usepackage{fontspec} % 允許設定字體 \usepackage{xeCJK} % 分開設置中英文字型 \setCJKmainfont{SimSun} % 設定中文字型 \setmainfont{SimSun} % 設定英文字型 \setromanfont{SimSun} % 字型 \setmonofont{SimSun} \linespread{1.2}\selectfont % 行距 \XeTeXlinebreaklocale "zh" % 針對中文自動換行 \XeTeXlinebreakskip = 0pt plus 1pt % 字與字之間加入0pt至1pt的間距,確保左右對整齊 \parindent 0em % 段落縮進 \setlength{\parskip}{20pt} % 段落之間的距離 \ifxetex \usepackage{xltxtra,xunicode} \fi \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} \newcommand{\euro}{€}$if(mainfont)$
之后,执行如下命令,即可得到比较完美的pdf了。 pandoc test.md -o test.pdf --latex-engine=xelatex --template=template.tex
可能会出现问题”pandoc “cannot parse yaml header” when converting md to pdf“,参考stackoverflow上的解决办法,在执行命令时,加上参数--from markdown-yaml_metadata_block
即可,不过最好还是将markdown中的”—“去掉。
补充
在上面的基础之上,可以进行适当修改以形成不同的模板,我将我的几个模板放在了github上,地址–·pandoc-m2p-template。
朴素型:
Style1:
参考文档
【1】神器Pandoc的安装与使用
【2】让pandoc输出pdf时支持中文
- markdown转为html及pdf
- HTML转为markdown工具
- Markdown语法转为html语法
- javascript 将HTML转为 word,pdf
- chrome 可以直接将html转为pdf
- 使用wkhtmltopdf将html转为pdf
- js实现html页面转为pdf下载
- Linux mint下用pandoc将markdown文件转为pdf
- Markdown导出成HTML,PDF格式
- MarkDown转换PDF,Word,Html格式
- Markdown导出成HTML,PDF格式
- JAVA 将所有文件转为.pdf和.html
- PHP,将html转为pdf(ThinkPHP框架)
- Nodejs中利用phantom把html转为pdf或图片格式
- word2007文件转为pdf
- PDF如何转为SWF
- 将WPF转为PDF
- 你用什么写简历:word?pdf?Latex?Markdown?Html?
- font-awesome
- 测试用例的初始化和结束函数
- js的input框限制输入内容
- SCF架构开发:Maven+weblogic+eclipse开发总结
- UITextView使用总结
- markdown转为html及pdf
- spring源码解析-Ioc1
- 考虑实现Comparable接口
- Oracle存储过程详解
- 4.7编写一个函数,从一个字符串中去除多余的空格。
- 如何优化程序员的内部培训
- DOM、JDOM、DOM4J的区别
- 人类视觉感知【4】立体图像的质量评价
- 电脑电源问题,导致攒机电脑无法开机