html - Pandoc:在从 Markdown 转换为 HTML 时将字体系列更改为 sans

标签 html command-line markdown pandoc font-family

我成功地得到了一个很好的格式化文本,我可以使用以下方法粘贴到任何地方:

cat myFile.md | pandoc -s -f markdown -t html | xclip -selection clipboard -t text/html

xclip是 X 选择(剪贴板)的命令行界面。使用 ... -t html -o myFile.html 也可以正常工作。

我正在尝试更改字体系列,从默认的 Serif 字体系列更改为其他一些 Sans-serif 字体系列。我找到了很多 LaTex、PDF 和 DOC 示例,但没有一个适用于这种情况。尝试了很多字体(从 fc-list : family 中列出,甚至在安装 texlive-xetex 包之后)。我能找到的最接近的答案是 this one .

我试图在 CLI 上只使用某些参数,尽量避免像 --css source/styles.css 这样的事情。

在 Ubuntu 18.04 上使用 pandoc 1.19.2.4。

我试过的一些--变量:

-V fontfamily:arev
-V fontfamily:Ubuntu
-V fontfamilyoptions:sfdefault
-V "mainfont:DejaVuSans"
-V mainfont="DejaVu Sans Serif"
-V "sansfont:DejaVuSans"

编辑 1:

基于 mb21's answer , 因为 Pandoc 1.12.x ( source ) 可以为 Pandoc 添加更多元数据 a YAML block code .

在较新的 Pandoc 版本中,我还添加了一个标题键以避免出现“[警告] 此文档格式需要一个非空元素。”。

---
title: My File
header-includes: |
  <style>
    body {
      font-family: "Liberation Sans";
    }
  </style>
---

我仍然看不出从 Markdown 而不是 LaTeX 到 HTML 而不是 PDF 在这方面的根本区别。

最佳答案

更新:这在 pandoc 2.11 中是可能的。有关详细信息,请参阅 MANUAL , 但例如:

---
mainfont: sans-serif
---

my markdown

旧答案:您提到的字体变量仅适用于 LaTeX/PDF 输出。要设置 HTML 样式,您需要 CSS。例如,您可以将其放入 Markdown 文件中:

---
header-includes: |
  <style>
    body {
      font-family: sans-serif;
    }
  </style>
---

my markdown

或者你可以:

此外:pandoc 1.19 很古老,请参阅 https://pandoc.org/installing.html

关于html - Pandoc:在从 Markdown 转换为 HTML 时将字体系列更改为 sans,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63293929/

相关文章:

javascript - 页面刷新后 div 类处于事件状态

html - 如何在 ipython notebook 中更改字体

浏览器外的 Javascript

javascript - 将文本框值转换为逗号分隔

html - 从最后一个 span 元素中移除::after 伪元素的内容

latex - pandoc 没有正确转换 latex 风格的引文

markdown - Jekyll:使用 Markdown 语法突出显示代码片段

ubuntu - jupyter markdown中等式内的删除线

linux - grep 键值对和格式的值

command-line - 向 CMake 添加命令行选项