You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中使用pdfkit移除书签及设置边距问题求助

解决方案

问题1:移除PDF书签

wkhtmltopdf默认会根据页面标题、H标签自动生成书签(大纲),要完全禁用这个功能,只需在options字典中添加'no-outline': None参数——该参数对应wkhtmltopdf命令行的--no-outline选项,直接关闭大纲生成。

问题2:修复边距设置无效的问题

  1. 修正代码语法错误:你的path_file变量缺少开头的单引号,会导致代码运行报错,先补上:path_file = 'c:/myfile/save/path/webpage.pdf'
  2. 调整边距单位与数值:px单位在部分环境下兼容性较差,建议换成英寸(in)或毫米(mm);另外2px的边距过小,可能被wkhtmltopdf的最小边距限制覆盖,可尝试设置更合理的数值,比如0.1in或2mm。
  3. 确认参数拼写:确保margin-left和margin-right的键名拼写正确,pdfkit会直接将这些键映射到wkhtmltopdf的对应参数。

修改后的完整代码

import pdfkit

path_wkhtmltopdf = r'C:/Program Files/path/to/wkhtmltopdf.exe'
config = pdfkit.configuration(wkhtmltopdf=path_wkhtmltopdf)

options = {
    'page-size': 'LETTER', 
    'margin-top': '24px',
    'margin-right': '2mm',
    'margin-bottom': '24px',
    'margin-left': '2mm',
    'no-outline': None  # 禁用书签
}

url = 'https://www.cal_info.ca.gov/mypath'
path_file = 'c:/myfile/save/path/webpage.pdf'
pdfkit.from_url(url, path_file, configuration=config, options=options)

额外建议

如果上述调整后边距仍不符合预期,建议更新到最新版wkhtmltopdf——旧版本可能存在参数兼容性问题,更新后能解决不少已知的渲染bug。

内容的提问来源于stack exchange,提问作者Shane S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 15:05:18