markdown 转 docx 及 pdf 转 docx

  • Windows 下安装 Pandoc
  • pandoc -v 查看版本

pdf 转换为 docx

  • pdf2doc
  • 在线转换PDF文件

中文转换时的乱码

通过 -V 参数指定中文字体

-V mainfont="Microsoft YaHei"

如果还是不行,请试试输入:

-V CJKmainfont=KaiTi

注意:-V--variable 的缩写。

其他格式的文件转化为 docx

  1. Word docx:

    pandoc -s MANUAL.txt -o example29.docx
    
  2. LaTeX math to docx:

    pandoc -s math.tex -o example30.docx
    
  3. Markdown to docx:

    pandoc -s m.md -o m.docx
    
  4. Docx with a reference docx:

    pandoc --reference-doc twocolumns.docx -o UsersGuide.docx MANUAL.txt
    

解决中文乱码

pandoc -V mainfont="Microsoft YaHei" --reference-doc twocolumns.docx -o UsersGuide.docx MANUAL.txt

这里是以 twocolumns.docx 为模板将 MANUAL.txt 写入到 UsersGuide.docx,使得UsersGuide.docxtwocolumns.docx 具有相同的格式。
更多内容参考:Pandoc Demos

其他

Docx to markdown, including math:

pandoc -s example30.docx -t markdown -o example35.md

EPUB to plain text:

pandoc MANUAL.epub -t plain -o example36.text

If no input-files are specified, input is read from stdin. Output goes to stdout by default. For output to a file, use the -o option:

pandoc -o output.html input.txt

By default, pandoc produces a document fragment. To produce a standalone document (e.g. a valid HTML file including and ), use the -s or -- standalone flag:

pandoc -s -o output.html input.txt

Character encoding

Pandoc uses the UTF-8 character encoding for both input and output. If your local character encoding is not UTF-8, you should pipe input and output through iconv:

iconv -t utf-8 input.txt | pandoc | iconv -f utf-8

Note that in some output formats (such as HTML, LaTeX, ConTeXt, RTF, OPML, DocBook, and Texinfo), information about the character encoding is included in the document header, which will only be included if you use the -s/--standalone option.

vscode 中的 pandoc

在 Markdown 开头的位置添加如下内容:

---
title: "文档"
author: XXXX
date: 2019/8/22
output:
  word_document:
    toc: true
    reference_doc: demo.docx
---

便可以直接将 .md 文档转换为以 demo.docx 为模板的 .docx 文档。在 Markdown 的预览区域,鼠标右键选择 Pandoc

总结:

  • markdown 转换为 html:pandoc README.md -o README.html
  • Markdown 转 word:pandoc README.md -o README.docx
  • markdown 转换为 pdf:pandoc README.md -o README.pdf --pdf-engine=xelatex(latex之前是双短横线)
    • 在执行本条命令之前,需要首先安装 latex 编译器,对于 windows 用户,比如安装 ctex 安装组件;
  • pandoc -s C.docx -t markdown -o C.md:可以将 docx 转换为 markdown
  • 各种例子

参考资料:

  • Pandoc User’s Guide
  • Markdown写作进阶:Pandoc入门浅谈

你可能感兴趣的:(markdown 转 docx 及 pdf 转 docx)