python - 使用 PyMuPDF 进行图像替换
问题描述
我正在使用 PyMuPDF 替换图像。但是当我有一个映射到它们的 bbox 坐标的图像字典时,只有第一页中的图像被替换。如何让字典中的所有图像都被替换?这是我的代码:'bbval' 是这样的字典: bbval dictionary
import fitz
src_pdf_filename = file_path
dst_pdf_filename = '/content/dest.pdf' #destination pdf
img_filename = '/content/logo.jpg' #the image that will be replacing the old ones
test=[]
val=0
for k in bbval:
test.append(str(bbval[i])[5:int(str(bbval[i]).index(str(bbval[i])[-1]))])
string=test[val].split(',')
img_rect = fitz.Rect(float(string[0]),float(string[1]),float(string[2]),float(string[3]))#str(bbval[i])[5:int(str(bbval[i]).index(str(bbval[i])[-1]))]
#print(bbval[k])
document = fitz.open(src_pdf_filename)
page = document[int(k[k.index('e')+1:k.index('-')])]
#print('page: ',page)
page.clean_contents()
page.insertImage(img_rect, filename=img_filename,keep_proportion=False)
val+=1
document.save(dst_pdf_filename)
document.close()
解决方案
推荐阅读
- python - 将对象入队以结束队列并用 python 打印出它的值
- reactjs - Nextjs - Global.css 样式未在页面/组件上应用/工作
- c++ - 如何在 qt-creator 中使用终端?
- javascript - 赛普拉斯报告者结果文件名
- python - 根据一列等于熊猫中的另一列从不同行返回值
- c++ - 如何从一个列表中插入数据
到另一个列表 - python - 如何在日历 odoo 中显示 2 个日期?
- java - 在 Http 请求的位置标头中获取错误的哈希
- ssl - 在 Windows 上的 tomcat 8.5 中配置具有中间证书的 SSL 证书
- c# - 当用户使用鼠标或箭头键设置光标时,如何获取光标在 ComboBox 中的位置?