【问题标题】:reportlab, find position/coordinates for last paragraph in pagereportlab,查找页面中最后一段的位置/坐标
【发布时间】:2016-08-18 07:08:57
【问题描述】:

我需要在最后一页的最后一段之后插入一些文本,不确定是否可以找到最后一段的坐标。

据我所知,reportlab 是处理 pdf 的最强大的库,但如果可以通过另一个库实现这一点就可以了。

还要问是否可以复制(找到最后一段的名称和大小等字体属性)?

我有什么

from reportlab.pdfgen.canvas import Canvas
from pdfrw import PdfReader
from pdfrw.toreportlab import makerl
from pdfrw.buildxobj import pagexobj

input_file = 'abc.pdf'
output_file = 'def.pdf'

# Get pages
reader = PdfReader(input_file)
pages = [pagexobj(p) for p in reader.pages]
canvas = Canvas(output_file)
lastpage = pages[-1]

for page_num, page in enumerate(pages, start=1):
    canvas.setPageSize((page.BBox[2], page.BBox[3]))
    canvas.doForm(makerl(canvas, page))

    if page == lastpage:
        canvas.saveState()

        # helpful code might come here

        canvas.restoreState()

    canvas.showPage()

canvas.save()

【问题讨论】:

    标签: python reportlab pdfrw


    【解决方案1】:

    解决方案位于 Yusuke Shinyama 的 Great pdfminer python 库中。他的项目 5 星。

    pdfminer 目前仅适用于 python2.7

    解压存档后从源安装

    sudo python setup.py install
    

    安装后命令行工具pdf2txt.py可以像这样使用

    /usr/local/bin/pdf2txt.py -t xml file.pdf > xmlfile.xml
    

    包含所有需要的信息以及更多信息!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-04
      • 2017-05-29
      • 2012-03-09
      • 2010-09-09
      相关资源
      最近更新 更多