是否可以使用重组文本将图像放置在标题内?
就像是:
Introduction .. image:: path/to/img.png
---------------------------------------
这呈现为文本,即不解析图像语法。我没有看到任何这样的例子让我相信这可能是不可能的,但也许有人有解决方法。
我打算输出到 HTML(因此可以修改派生的 CSS,尽管我更愿意更改 RST 源。这是因为我还打算输出到 pdf(乳胶)。
是否可以使用重组文本将图像放置在标题内?
就像是:
Introduction .. image:: path/to/img.png
---------------------------------------
这呈现为文本,即不解析图像语法。我没有看到任何这样的例子让我相信这可能是不可能的,但也许有人有解决方法。
我打算输出到 HTML(因此可以修改派生的 CSS,尽管我更愿意更改 RST 源。这是因为我还打算输出到 pdf(乳胶)。
我认为使用别名(即替代)可以获得更好的结果。
这是文档中的摘录,可能会有所帮助:
The |biohazard| symbol must be used on containers used to
dispose of medical waste.
.. |biohazard| image:: biohazard.png
我希望这有帮助
这可以通过在标头中使用替换来实现:
Header Text |foo|
=================
.. |foo| image:: path/to/img.png
这foo
只是一个示例替换文本。它可以是任何东西,但不应以空格开头或结尾。
抽象替换语法如下:
+-------+-----------------------------------------------------+
| ".. " | "|" substitution text "| " directive type "::" data |
+-------+ directive block |
| |
+-----------------------------------------------------+
由于我们想插入一个内联图像,我们应该image
选择directive type
.
使用 HTML 和 CSS 有多种方法可以将图像添加到产生不同结果的元素中。我能想到的一对是:
使用图像代替任何文本。在这里,我们保留文本,但将其发送到屏幕外,因此仍然可以访问。
h1 {
background: url(images/image.jpg) no-repeat top center;
display: block;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
width: XXpx;
height: XXpx;
}
将图像放在文本的左侧(或者可以很容易地放在右侧)
h1 {
background: url(images/image.jpg) no-repeat top left;
padding-left: XXpx;
}
在任何文本后面使用背景图像
h1 {
background:url(images/image.jpg) no-repeat top center;
}
更具体的 CSS 选择器可用于仅针对某些标头。
raw
您可以使用指令在 reStructuredText 文档中轻松包含自定义 CSS ,如下所示:
.. raw:: html
<style>
<!-- One of the CSS styles above. -->
</style>
--stylesheet
或者,您可以使用选项从命令行包含自定义 CSS 样式表rst2html.py
。
在实现与 PDF 输出相同的方面,我将窃取我的另一个答案的一部分:
显然,上面的目标是 HTML 输出。但是,我没有使用 rst2pdf,因此无法评论如何修改上述内容以使用该程序。希望其他人会对此提供答案。据我所知,rst2pdf 确实支持级联样式表机制,因此(对于了解 rst2pdf 样式表语法的人来说)添加一个额外的
.. raw:: pdf
角色并修改上述列表样式应该很简单。