习惯写Rest文档,没用过LaTex
我想做的是创建一些字体颜色角色,我可以添加内联文本(例如:red:
this text is red
)在html和latexpdf编译中都有效。
我发现了一个类似的问题here,但我无法重现它。
我认为 magic 将完成更改
conf.py
文件,但我没有找到如何。
另外,在
latexpdf
编译的时候,在_build/latex
目录下,有一个sphinx.sty
文件,里面有很多东西,可以用来定制最终的pdf文件。
如果我想更改最终 pdf 文件的某些参数,是否需要编辑此文件,将其放在某个地方并告诉 sphinx 获取此样式文件?
对不起所有这些东西,但我有点困惑..
谢谢!
只需添加:
带有
的'source/_templates/layout.html'文件{% extends "!layout.html" %}
{% block extrahead %}
<link rel="stylesheet" type="text/css"
href="{{ pathto('_static/custom.css', 1) }}" />
{% endblock %}
带有
的'source/_static/custom.css'文件@import url("default.css");
.red {
color: red;
}
您现在可以在您的第一个文件中使用 :red: 角色。不要忘记 html 或 css 版本后的反勾和干净的目标:
A :red:`red`text
$> make clean html
全局树:
test-sphinx
├── Makefile
├── build
└── source
├── _static
│ └── custom.css
├── _templates
│ └── layout.html
├── conf.py
└── index.rst
一个索引。第一个例子:
TS test!
========
.. role:: red
This is :red:`just` a test …
希望这有帮助,
安东尼
aflp91 的答案适用于使用 css 为 html 输出设置颜色,但它不会改变乳胶输出中的颜色。
Aflp91的回答其实在tex文件中生成了一个自定义角色,可以覆盖改变颜色。所缺少的只是在 LaTex 中实际自定义自定义角色的代码。为此,在 conf.py 中添加以下内容:
latex_elements = {
'passoptionstopackages': r'\PassOptionsToPackage{svgnames}{xcolor}',
'preamble': r'''
\newcommand{\DUrolered}[1]{{\color{red} #1}}
''',
}
DUrole 语法在 docutils 文档中描述。