Doxygen为Docbook输出创建空图像标题

时间:2018-11-23 14:45:50

标签: image doxygen docbook

我正在使用doxygen 1.8.14创建docbook输出。图片标有

\image docbook Legend.png "Coloring and Graph Scheme" width=10cm

生成的文档是

<figure>
    <title></title>
    <mediaobject>
        <imageobject>
            <imagedata width="10cm" align="center" valign="middle"
             scalefit="1" fileref="Legend.png"></imagedata>
        </imageobject>
    <caption>Coloring and Graph Scheme</caption>
    </mediaobject>
</figure>

请注意<title>是如何为空的(标记中的标题字符串转到了<caption>元素中)。 这会使文档的“图形列表”部分看起来像这样:

1.1. ........................... 8
1.2. ........................... 9
2.1. .......................... 13
2.2. .......................... 14
2.3. .......................... 16

(因为“图形列表”使用图形 <title> 的内容,而不是<caption>的内容)。在我开始用perl单线黑客破解标题的标题之前,有没有我忽略的东西?也许是在强氧状态下?

正确的docbook代码是

<figure>
    <title>Coloring and Graph Scheme</title>
    <mediaobject>
        <imageobject>
            <imagedata width="10cm" align="center" valign="middle"
             scalefit="1" fileref="Legend.png"></imagedata>
        </imageobject>
    </mediaobject>
</figure>

1 个答案:

答案 0 :(得分:1)

在版本1.8.14中,标题是作为标题编写的,在主版本中,直到现在为止,标题都是写在标题上的,但位置错误。为此,我提出了对氧气(https://github.com/doxygen/doxygen/pull/6638)的提拔请求。

一种解决方法是使用:

\docbookonly
<figure>
    <title>Coloring and Graph Scheme</title>
    <mediaobject>
        <imageobject>
            <imagedata width="10cm" align="center" valign="middle"
             scalefit="1" fileref="Legend.png"></imagedata>
        </imageobject>
    </mediaobject>
</figure>
\enddocbookonly

代替:

\image docbook Legend.png "Coloring and Graph Scheme" width=10cm

编辑:请求请求的代码已集成在github的master中。