首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向使用rst2pdf和spinx生成的PDF中添加页眉和页脚

向使用rst2pdf和spinx生成的PDF中添加页眉和页脚
EN

Stack Overflow用户
提问于 2022-08-02 21:12:21
回答 1查看 105关注 0票数 0

我继承了使用reStructuredText和Sphinx构建的用户指南,我们希望(也可以)从指南中生成一个使用rst2pdf与狮身人面像集成的PDF。我们想做的一件事是将自定义的页眉和页脚应用到文档的每一页(a‘’la“草稿-不是用于发布”或"Version x.y.z"),但是没有一种明显的方法(对我来说)。rst2pdf命令支持指定--footer="..."--header="...",但在--header="..."配置指令中似乎没有类似的选项可以在狮身人面像中指定。尽管RST确实支持头指令和脚指令,但Sphinx文档明确警告不要使用它们。

我认为使用rst2pdf样式表来设置它是可能的,但我也有一段时间来了解自定义样式表是如何与现有样式表交互的(如果有的话)。

所以,我要找的是一些关于如何使用rst2pdf和狮身人面像干净地将头和页脚添加到每个页面的指导。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-04 00:02:49

我想出的答案是把信息拼凑在一起:

因此,我所做的是创建一个名为draft.yaml的样式表,并将其放置为文档源代码的_styles子目录,如下所示:

代码语言:javascript
复制
pageTemplates:
    decoratedPage:
        defaultFooter: |
            .. class:: right

            ###Page###


            .. class:: draft

            DRAFT - DO NOT RELEASE


        defaultHeader: &draftCentered |

            .. class:: draft

            DRAFT - DO NOT RELEASE


    mainPage: &draftTopAndBottom
        defaultFooter: *draftCentered
        defaultHeader: *draftCentered
        showFooter: true
        showHeader: true

    coverPage: *draftTopAndBottom

    emptyPage: *draftTopAndBottom


styles:
    draft: {alignment: center, parent: bodytext, fontName: fontSansBold}

注意到样式表处理器支持锚和别名,我只是简单地修改现有的页面模板,以便在所有页面上包含一个默认的页眉和页脚,并且可以定义并使用自己的样式在页眉和页脚中应用。我本想尝试使用表语法将页码和页脚横幅放在同一行中,比如可以在文档正文中作为在这里显示来完成,但它一直试图将表语法作为引用替代。

为了使它与狮身人面像和rst2pdf一起工作,我需要在conf.py中添加一些附加的配置信息--首先将rst2pdf.pdfbuilder添加到extensions列表中,然后使用以下变量定义来控制extensions呈现:

代码语言:javascript
复制
# -- Options for PDF output ----------------------------------------------
pdf_documents = [('index', u'mydoc', u'My Documentation', u'My Project'),]
pdf_stylesheets = ['sphinx', 'letter', 'draft']
pdf_style_path = ['source/_styles']

在配置和样式表就绪之后,使用pdf构建器运行sphinx,将在sphinx默认设置的基础上应用内置sphinxletter rst2pdf样式表,然后应用自定义的draft rst2pdf样式表,并在每个页面的顶部和底部生成所需的横幅文本。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73213867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档