我想转换降价文本,如:
This is a smile
Run Code Online (Sandbox Code Playgroud)
到带有表情符号的 PDF。需要明确的是,我希望能够在源文本中插入表情符号字符本身,而不是像:smile:.
我怎样才能用 Pandoc 做到这一点?
在最初过于肤浅地阅读了 OP 之后(忽略了他不需要在:smile:源 Markdown 中使用& 朋友),这里有一个更好的答案。尝试以下其中一项:
pandoc my.markdown -o emoji.pdf --pdf-engine=lualatex -V mainfont="DejaVu Sans"
pandoc my.markdown -o emoji.pdf --pdf-engine=xelatex -V mainfont="DejaVu Sans"
Run Code Online (Sandbox Code Playgroud)
如果您使用默认的 pdf-engine ( pdflatex),您将不会成功,但会收到类似的错误
! Package inputenc Error: Unicode character (U+1F600)
(inputenc) not set up for use with LaTeX.
Run Code Online (Sandbox Code Playgroud)
如果您不指定参数,您将收到一条警告消息mainfontsmainfont
[WARNING] Missing character: There is no (U+1F604) in font [lmroman10-regular]:+tlig;
Run Code Online (Sandbox Code Playgroud)
对于 XeLaTeX 和
[WARNING] Missing character: There is no in font [lmroman10-regular]:mapping=tex-text;!
Run Code Online (Sandbox Code Playgroud)
感谢@jpnadas 注意到我的答案中的拼写错误。该参数应该是-V mainfont=...(不是-V mainfonts!)。
我将其留给读者来测试正确的命令并查看其结果:
pandoc -o emoji.pdf --pdf-engine=lualatex -V mainfont="DejaVu Sans"
pandoc -o emoji.pdf --pdf-engine=xelatex -V mainfont="DejaVu Sans"
Run Code Online (Sandbox Code Playgroud)
尝试:smile:用 HTML 替换:
This is a smile <img src="https://github.com/images/icons/emoji/unicode/1f604.png"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2355 次 |
| 最近记录: |