代码之家  ›  专栏  ›  技术社区  ›  danielleontiev

Pandoc`lang`选项使字体难看

  •  1
  • danielleontiev  · 技术社区  · 6 年前

    pandoc . 我曾经 latex 以前因为我总是处理公式,代码。以下是我编译成pdf的简单文档:

    ---
    title: Test
    ...
    
    # Test!
    
    This is a test of *pandoc*.
    
    - list one
    - list two
    - $E=mc^2$
    - На русском
    
    Горит костер рябины красной.
    
    $$
    A = \int\limits_{-\infty}^{\infty} e^{-x^2}dx
    $$
    
    ```python
    class ClassName(object):
        """docstring for ClassName (Кириллица?)"""
        def __init__(self, arg):
            super(ClassName, self).__init__() # English comment
            self.arg = arg # Кириллический комментарий
    
    ```
    

    1. pandoc test1.md -o test1.pdf
    2. pandoc -V lang=ru-RU -o test1-2.pdf test1.md

    第一个命令无法呈现西里尔字母符号。此外,我总是写非英语文档,所以我需要用俄语编写的标题生成文档。我曾经 lang 属性来做它 潘多克

    发生了什么以及如何修复?

    screenshot

    1 回复  |  直到 6 年前
        1
  •  2
  •   Ralf Stubner    6 年前

    我发现很难为拉丁语、西里尔语、数学和代码块设置与 pandoc . 我发现最好的折衷办法是:

    • 设置 lang 等于 en 并明确标出俄罗斯部分。
    • 将XITS字体用于普通文本和数学
    • 使用覆盖西里尔文的固定宽度字体,例如Liberation Mono
    • 使用XeLaTeX或LuaLaTeX处理

    ---
    title: Test
    mainfont: XITS
    monofont: Liberation Mono
    mathfont: XITS Math
    lang: en
    ---
    
    # Test!
    
    This is a test of *pandoc*.
    
    - list one
    - list two
    - $E=mc^2$
    - [На русском]{.class lang="ru-RU"}
    
    ::::: {.class lang="ru-RU"}
    
    Горит костер рябины красной.
    
    :::::
    
    
    $$
    A = \int\limits_{-\infty}^{\infty} e^{-x^2}dx
    $$
    
    
    ```python
    class ClassName(object):
        """docstring for ClassName (Кириллица?)"""
        def __init__(self, arg):
            super(ClassName, self).__init__() # English comment
            self.arg = arg # Кириллический комментарий
    
    ```
    

    结果 pandoc cyr.md --pdf-engine=lualatex -o cyr.pdf :

    enter image description here