<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Pandoc on TripleZ&#39;s Blog</title>
    <link>https://blog.triplez.cn/tags/pandoc/</link>
    <description>Recent content in Pandoc on TripleZ&#39;s Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>zh-cn</language>
    <lastBuildDate>Sat, 21 Oct 2017 12:58:09 +0000</lastBuildDate><atom:link href="https://blog.triplez.cn/tags/pandoc/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>将 Markdown 文件导出成 PDF 格式</title>
      <link>https://blog.triplez.cn/posts/markdown-file-to-pdf-format/</link>
      <pubDate>Sat, 21 Oct 2017 12:58:09 +0000</pubDate>
      
      <guid>https://blog.triplez.cn/posts/markdown-file-to-pdf-format/</guid>
      <description>使用 Pandoc + MikTeX 导出带数学符公式的 Markdown 成 PDF 文件</description>
      <content:encoded><![CDATA[<h2 id="前言">前言</h2>
<p>因为最近要做课程有关的一些实验，有了写实验报告的需求。这些代码性的实验报告自然就直接用 <code>Markdown</code> 来编写啦~ 然后问题来了，由于是实验报告，会含有很多的数学公式以及图表，一般性的 <code>Markdown</code> 导出工具是不支持渲染 <code>LaTeX</code> 语法的数学公式的，所以导出来的效果非常差。</p>
<p>有了需求自然就要去想实现。经过一番搜索，发现了 <code>Pandoc</code> + <code>MikTex</code> + <code>Markdown</code> 这个理想的组合。于是，就开始了漫长的配置之路……</p>
<h2 id="配置-pandoc">配置 Pandoc</h2>
<p><code>Pandoc</code> 官方的配置流程在 <a href="http://pandoc.org/installing.html">这里</a>。</p>
<h3 id="windows">Windows</h3>
<h4 id="安装-pandoc">安装 Pandoc</h4>
<ul>
<li>
<p>在 <a href="https://github.com/jgm/pandoc/releases/tag/1.19.2.1">Pandoc Releases</a> 中下载最新版本的 <code>pandoc-x.x.x.x-windos.msi</code> 并执行安装。</p>
</li>
<li>
<p>安装完成后，在命令行中输入 <code>pandoc --version</code>， 若出现版本号，则安装成功。</p>
</li>
</ul>
<blockquote>
<p><code>Pandoc</code> 本身是一个功能特别强大的文件格式转换器，能够支持  <code>markdown</code>, <code>reStructuredText</code>, <code>textile</code>, <code>HTML</code>, <code>DocBook</code>, <code>LaTeX</code>, <code>MediaWiki markup</code>, <code>TWiki markup</code>, <code>OPML</code>, <code>Emacs Org-Mode</code>, <code>Txt2Tags</code>, <code>Microsoft Word docx</code>, <code>LibreOffice ODT</code>, <code>EPUB</code>, <code>Haddock markup</code> 格式的转换。简直就是文件转换中的 “瑞士军刀”。</p>
</blockquote>
<ul>
<li>如果需要将文件转换成 <code>PDF</code>，则需要安装 <code>TeX</code> 编译器。在 <code>Windows</code> 下，推荐使用 <code>MikTeX</code>。</li>
</ul>
<h4 id="安装-miktex">安装 MikTeX</h4>
<ul>
<li>
<p>在 <a href="https://miktex.org/download">这里</a> 下载 <code>MikTeX</code> 并安装。</p>
</li>
<li>
<p>安装好 <code>MikTeX</code> 后，先使用 <code>MikTeX Update</code> 升级核心包。</p>
</li>
<li>
<p>升级好之后，打开 <code>MikTeX Settings</code>，找到 <code>Package</code> -&gt; <code>Language Support</code> -&gt; <code>Chinese, Japanese, Korean</code> 并打上勾，点击<code>确定</code>安装中文语言支持包。</p>
</li>
</ul>
<blockquote>
<p>这一步可能会需要设置代理，取决于连接的目标服务器。</p>
</blockquote>
<h3 id="linux">Linux</h3>
<p><del>还没配，等着填坑</del></p>
<h2 id="使用-pandoc">使用 Pandoc</h2>
<h3 id="markdown-文件导出-pdf">Markdown 文件导出 PDF</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt" id="hl-0-1"><a style="outline: none; text-decoration:none; color:inherit" href="#hl-0-1">1</a>
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">pandoc source.md -o ouput.pdf --latex-engine<span class="o">=</span>xelatex -V <span class="nv">mainfont</span><span class="o">=</span><span class="s2">&#34;Microsoft YaHei&#34;</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p><code>mainfont</code>是字体名称，具体中文对照表可见 <a href="https://xuui.net/ui-design/english-name-of-chinese-characters-table.html">这里</a></p>
<p>常用中文字体的英文名称对照表</p>
<table>
<thead>
<tr>
<th style="text-align:center">Chinese Name</th>
<th style="text-align:center">English Name</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:center">宋体</td>
<td style="text-align:center">SimSun</td>
</tr>
<tr>
<td style="text-align:center">微软雅黑</td>
<td style="text-align:center">Microsoft YaHei</td>
</tr>
<tr>
<td style="text-align:center">仿宋</td>
<td style="text-align:center">FangSong</td>
</tr>
<tr>
<td style="text-align:center">华文细黑</td>
<td style="text-align:center">STXihei</td>
</tr>
</tbody>
</table>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
