- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用 pandoc
编译一个包含 CJK 元素(实际上是中文)的 Markdown 文档。据说there --latex-engine=xelatex
选项允许 pandoc
编译 Unicode 字符。
不过,我试过了
cjk.md:
Hello
你好
用(在 bash 中)编译
pandoc -s -o cjk.pdf --latex-engine=xelatex cjk.md
但是生成的 .pdf
只显示了 Hello
,而 你好
不见了。我错过了什么吗?pandoc
已更新;我正在使用更新到 Sierra 的 Macbook Air(2012 年购买)。我已经正确安装了 xelatex
(我想是在 MacTex 中),因为当我使用 texstudio
编译 xelatex
时,没有问题。
最佳答案
解决了。 Tl; dr:将编译器设置为 xelatex
而不是 pdflatex
是不够的;还必须包含包 xeCJK
,但它应该在哪里,见下文。
编辑:下面也可以通过设置这些pandoc template来实现变量:
---
CJKmainfont: STSong
CJKoptions:
- BoldFont=STHeiti
- ItalicFont=STKaiti
---
Hello 你好
在我的例子中,pandoc
读取 .md
,将其转换为 .tex
,然后调用编译器将其编译为.pdf
。因此,理论上,我可以使用类似 tex 的编译器正常执行的操作,也可以使用 pandoc
完成 --- 只是我必须指定所需的模板。
pandoc
调用自己的latex 模板,我们可以在终端中通过预先编写的命令cat
:
pandoc -D latex > default.latex
这实际上将一个新文件 default.latex
复制到 .
(当前目录)。这就是我现在修改的。编译时将此选项附加到 pandoc
:
--template=my-directory/my-template.latex
过去我输入汉字(或者更一般地,CJK),我使用以
开头的模板\documentclass[12pt]{article}
\usepackage{xeCJK}% use Latin font whenever possible
\usepackage{fontspec}% set Chinese fonts, as follows
\setCJKmainfont[BoldFont=STHeiti,ItalicFont=STKaiti]{STSong}
\setCJKsansfont[BoldFont=STHeiti]{STXihei}
\setCJKmonofont{STFangsong}
% .... whatever xeCJK commands you use
字体应该是您的系统允许的字体;上面显示的这些是随 mac 一起提供的。
但是当我简单地将它粘贴到 pandoc 提供的模板中时,有许多神秘的错误消息
option clash for package XXXX....
这是因为 pandoc-proviede 模板已经定义了 xeCJK
。确实,搜索这些行:
$if(CJKmainfont)$
\usepackage{xeCJK}
\setCJKmainfont[$for(CJKoptions)$$CJKoptions$$sep$,$endfor$]{$CJKmainfont$}
$endif$
这些行(引用部分)应替换为
\usepackage{xeCJK}
\setCJKmainfont[BoldFont=STHeiti,ItalicFont=STKaiti]{STSong}
% .... and so on, whatever you call from xeCJK
即删除if
,使得xeCJK
总是被执行;否则,xeCJK
行将不会被复制到中间 .tex
文件中。还要删除\usepackage{fontspec}
,因为它默认是由pandoc
调用的,否则中间.tex<中两次调用packages会报错
文件。
抱歉,我没有跟踪我引用的每个网站,但无论如何没有一个网站是正确的,或者已经过时了。最大的帮助是mb21 ,谁在评论中建议我输出 .tex
to debug,之后我发现 xeCJK
不包括在内。
我在这个问题上花了大约 10 多个小时,但从现在开始,我可以愉快地在 markdown 文件中输入中文了。为了可怜的后人,我把它写下来了。
关于markdown - pandoc不识别汉字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40892725/
我正在使用来自 http://www.zotero.org/styles/ieee 的 IEEE 引用样式在一个项目中使用 Pandoc。 当我引用引用文献时,它显示为 1在文本中,而我希望它显示为
我希望我的文档的某些部分仅适用于给定的输出格式。例如,我有一个需要特殊 LaTeX 处理的图像,我想使用\includegraphics 来处理它。但是对于 epub 版本,我想要标准行为。 Pand
default.beamer LaTex beamer 的 pandoc 默认模板有这一行: $if(theme)$ \usetheme{$theme$} $endif$ 特定主题的测试也有效吗?就像
我正在尝试为 pandoc 添加自定义 latex 模板 我知道 pandoc 模板进入 ~/.pandoc/templates 我通过输入 pandoc --v 确认了 pandoc 目录位置- 它
是否可以为 pandoc 设置默认选项? ?例如,我一直想使用 xelatex 生成 PDF,据我所知,我这样做的选择是通过 --latex-engine=xelatex对 pandoc 的每次调用,
我有一个从默认加载的 Pandoc (v1.19.2.1) HTML5 模板 --data-dir .在模板中,我需要加载外部资源,例如样式表和 JavaScript。我想相对于模板的路径加载这些资源
我正在尝试使用 pandoc 将 Markdown 文件编译为 HTML。我已经设法转换文件并向其中添加样式表,但我似乎无法正确添加一些 Javascript。到目前为止,我得到的是以下命令: pan
我通过 Anaconda 在我的系统上安装了 Pandoc 2.2.3.2。我用它转换的 Reveal.js 幻灯片不起作用,因为插入的 Reveal.js 代码链接似乎是错误的。 documenta
是否可以在 markdown 文件中使用 knitr 的 pandoc() 函数和嵌入的 pandoc 配置来更改默认的 pandoc latex 模板选项? 例如,如果我在 foo.md 的开头使用
在从 Markdown 生成 PDF 时,您如何指定 Pandoc 应使用特定的页眉和页脚? 目前,我使用以下命令从命令行创建我的文档: pandoc -s -V geometry:margin=1i
我有一台 Windows 8 机器,我刚刚运行了 pandoc-1.13-windows.msi 安装程序。安装程序没有让我选择安装路径,但它没有错误地完成了。我无法从命令行运行 pandoc,所以我
我对 Pandoc 比较陌生,我正在尝试用我的出版物生成一个 HTML 文件以放在我的网站上。我希望首先按年份对出版物列表进行编号和组织,最新的排在最前面,最早的排在最后。 我可以使用正确的 csl
当我运行下面的命令从 Markdown 生成幻灯片时,未正确选择主题。 pandoc slides -o slides.html -s -V theme=beige -t revealjs 我的幻灯片
我正在使用 pandoc + beamer 制作一些幻灯片。如何创建标题幻灯片以介绍新部分? 例如 ____Slide 1_____ Section 1 ... * bla * bla * bla _
当输出为 HTML 时,我可以成功生成图像,但在尝试 pdf 输出时出错。 图像的输入文件文本, ![](images\icon.png "test") 错误产生, pandoc: Error p
我正在使用 Pandoc 编写站点的内容。如何在文档中包含元标记(特别是描述和关键字标记),而不更改传递给 Pandoc 的命令行参数? 我的意思是,我可以在文档文本中以某种方式包含元标记吗?我不想传
pandoc User's Guide状态(强调添加): For output formats other than LaTeX, pandoc will parse LaTeX \newcomman
我正在使用 pypandoc 将 Markdown 文件转换为 LaTex。我的 Markdown 文件有一个标题,例如: # Header Text # 当 pypandoc 将文件呈现为 .tex
我正在尝试使用 Pandoc 从 html 转换为 pdf。输出非常好,仍然使用命令 pandoc index.html -o output.pdf 我丢失了所有内部链接(从目录到章节,从文本到脚注等
我试图转换这个 html SHILPI 使用带有此命令的 pandoc 到 docx pandoc -s -o "test.docx" -t html5 -t docx html_file 但是它丢失
我是一名优秀的程序员,十分优秀!