2

背景资料

我有以下 Python 代码,我想用它来生成 pdf 文件。它使用pdfkit 库

import pdfkit               # import python module

if __name__=="__main__":
   
    
    options = {
        'page-size': 'Letter',
        'margin-top': '0.5in',
        'margin-right': '0.75in',
        'margin-bottom': '0.5in',
        'margin-left': '0.75in',
        'encoding': "UTF-8",
        'footer-left': "This is a footer",
        'footer-font-size':'7',
        'footer-right': '[page] of [topage]',
        
        'custom-header' : [
            ('Accept-Encoding', 'gzip')
        ],
        'no-outline': None
    }

    ##this is the path of the whkhtmltopdf.exe in order for the library to 
    ##work on a Windows OS
    path_wkthmltopdf = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
    config = pdfkit.configuration(wkhtmltopdf=path_wkthmltopdf)
            
    pdfkit.from_url('http://google.com', 'Report.pdf',options=options,configuration=config))

生成的 PDF 如下。我所需要的只是上面的一行是页脚。 生成的 PDF

根据以下站点,我可以使用属性在页脚上方添加页脚行,footer-line但我不了解如何在 python 中实现它的语法

https://wkhtmltopdf.org/usage/wkhtmltopdf.txt

简要问题

如何修改options属性以包含footer-line

 options = {
        'page-size': 'Letter',
        'margin-top': '0.5in',
        'margin-right': '0.75in',
        'margin-bottom': '0.5in',
        'margin-left': '0.75in',
        'encoding': "UTF-8",
        'footer-left': "This is a footer",
        'footer-font-size':'7',
        'footer-right': '[page] of [topage]',
        
        'custom-header' : [
            ('Accept-Encoding', 'gzip')
        ],
        'no-outline': None
    }
4

1 回答 1

3

显然您只需添加属性并将其传递给空参数

所以到options你刚刚添加的属性'footer-line':'' 所以它变成了以下

     options = {
        'page-size': 'Letter',
        'margin-top': '0.5in',
        'margin-right': '0.75in',
        'margin-bottom': '0.5in',
        'margin-left': '0.75in',
        'encoding': "UTF-8",
        'footer-left': "This is a footer",
        'footer-line':'',
        'footer-font-size':'7',
        'footer-right': '[page] of [topage]',

        'custom-header' : [
            ('Accept-Encoding', 'gzip')
        ],
        'no-outline': None
    }

如果有更好的方法请告诉我

于 2017-08-03T08:02:00.467 回答