如何在pymupdf的PDF文件中实现Rect之前的文本

时间:2019-07-11 07:16:07

标签: python-3.x pdf automation mupdf

我正在尝试获取存在“ ______”的坐标。使用MuPDF可以轻松实现。获取此Rect坐标后,我需要获取此Rect坐标之前的字符串或字符。

我的主要目标是阅读PDF文件,无论有何用户输入,我都需要在该位置绘制矩形并获取要在该用户输入中填充的数据。

我希望我听起来很清楚。

请查看我到目前为止完成的代码。

import fitz

file = "real.pdf"

doc = fitz.open(file)

def searchTextAndHighLight(page):
  text = "_"
  text_instances = page.searchFor(text)
  i = 0
  for inst in text_instances:
    print(inst)
    print("<----------------------------------------->")
    i+=1
    highlight = page.addRectAnnot(inst)
  print(i)
  doc.save("output.pdf", garbage=4, deflate=True, clean=True)

  for page in doc:
    searchTextAndHighLight(page)

欢迎任何建议完成我的任务。预先感谢

1 个答案:

答案 0 :(得分:0)

我遇到了和你一样的问题。尝试这个。它对我有用。

import fitz

file = "real.pdf"

doc = fitz.open(file)

def searchTextAndHighLight(page):
  text = "_"
  text_instances = page.searchFor(text)
  i = 0
  for inst in text_instances:
    print(inst)
    print("<----------------------------------------->")
    i+=1
    highlight = page.addRectAnnot(inst)
    highlight.setBlendMode(fitz.PDF_BM_Multiply)
    highlight.update()
  print(i)
  doc.save("output.pdf", garbage=4, deflate=True, clean=True)

for page in doc:
  searchTextAndHighLight(page)