zoukankan      html  css  js  c++  java
  • Python将HTML转换为PDF

    Python将HTML转换为PDF

    使用pdfkit库和wkhtmltopdf
    pip install pdfkit wkhtmltopdflinux中一般需要添加sudo权限.

    Windows安装独立版本的for Windows XP/2003 or later; standalone
    Linux直接使用命令安装就行, Fedora/CentOSsudo yum install wkhtmltopdf,
    Debian/Ubuntusudo apt install wkhtmltopdf

    import pdfkit
    pdfkit.from_file(input_file, output_file)
    

    html转为pdf时的分页断行错误

    在需要进行分页的块(如div)中添加样式page-break-inside:avoid;

    强制分页

    想从html中的某个标签的位置进行强制分页, 添加样式page-break-after:always;

    直接使用wkhtmltopdf的选项参数

    使用字典的形式, wkhtmltopdf的选项作为字典的key, 删除选项前的--.
    如果选项没有值, 使用None或者False.
    对于可以有多个元素的选项来说(cookie, custom-header, post, postfile, run-script, replace等), 可以使用列表或者元组.

    例如

    options = {
        "page-size": "Letter",
        "cookie": [
            ('cookie-name', 'cookie-value')
        ],
        "no-outline": None
    }
    

    wkhtmltopdf的选项信息,可以参考这个网页https://www.jianshu.com/p/4d65857ffe5e, 对帮助信息的一个翻译.
    或者使用wkhtmltopdf -H显示所有的帮助信息, 官方的文档也是这个.

  • 相关阅读:
    《朗读手册》【美】吉姆·崔利斯
    《web全栈工程师的自我修养》 读书笔记
    2016/06 书单
    PostgreSQL数据库的安装
    MySQL数据库的安装
    异构数据库迁移——DATAX
    初探12C碰到的那些“坑”
    关于Ubuntu 16.04 pip安装Docker-Compose
    启动与关闭容器
    容器标识符
  • 原文地址:https://www.cnblogs.com/zzhaolei/p/11068101.html
Copyright © 2011-2022 走看看