zoukankan      html  css  js  c++  java
  • odoo reports 报表打印pdf初探

    html转pdf 使用的三方工具:

    wkhtmltopdf

    源码分析:

            pdf_content = self._run_wkhtmltopdf(
                bodies,
                header=header,
                footer=footer,
                landscape=context.get('landscape'),
                specific_paperformat_args=specific_paperformat_args,
                set_viewport_size=context.get('set_viewport_size'),
            )
    

    可以看出要调用三方工具需要准备的数据有,body,header, footer,这下知道为什么header 和footer 能够在多个页面重复显示了吧.

    update 2021年12月11日5

    这里得header,bodies,footer 都被处理成了一个完整的html 页面,header 和footer的高度也都是已经设置死了,bodies 的摆放位置会根据header 设置的高度,从一个固定的位置开始,还有一点要说明的是,header 的高度如果比内容的高度小,则实际显示的失火还是会显示出来的,并且会覆盖bodies 的内容.最近遇到一些头痛的需求,要把一些格式不固定的内容放到header中,比如地址信息,这就好造成某些客户的表头很长,某些公司的表头很短,长的会盖掉boides的内容,短的又会留出很大块空白.


    懂得,原来世界如此简单!

  • 相关阅读:
    两台centos,用yum install 安装,一台成功,一台失败
    django 删除默认app
    FFmpeg
    安装nginx
    django markdown格式化变量
    安装python3.8
    安装 docker
    Centos7 安装selenium webdriver环境
    收集网页数据方法
    logstash 6.3.2下载地址
  • 原文地址:https://www.cnblogs.com/qianxunman/p/15666571.html
Copyright © 2011-2022 走看看