两个 pdf 水印 - 第一个的每一页和第二个的每一页

2024-01-15

我有两个长度相同的 pdf 文件,比如说 pdf1.pdf 和 pdf2.pdf。我正在尝试使用 pdf2.pdf 为 pdf1.pdf 的每一页添加水印(即 pdf1.pdf 第 1 页与 pdf2.pdf 第 1 页,pdf1.pdf 第 2 页与 pdf2.pdf 第 2 页...) 。

然而,我真的很苦恼如何循环它们(我是编程新手)。

例如,我尝试了这个:

import PyPDF2
from PyPDF2 import PdfFileMerger
from PyPDF2 import PdfFileReader, PdfFileWriter

output = PdfFileWriter()

ipdf = PdfFileReader(open('pdf1.pdf', 'rb'))
wpdf = PdfFileReader(open('pdf2.pdf', 'rb'))
for i in xrange(wpdf.getNumPages()):
    watermark = wpdf.getPage(i)
    for i in xrange(ipdf.getNumPages()):
        page = ipdf.getPage(i)

for i in watermark:
    page.mergePage(watermark)
    output.addPage(page)

with open('newfile.pdf', 'wb') as f:
   output.write(f)

任何帮助,将不胜感激 :) :)


您使用了太多循环,页数是相同的,因此您在页数上循环一次,获取水印,获取页面,将两者组合并将它们添加到输出中:

import PyPDF2
from PyPDF2 import PdfFileMerger
from PyPDF2 import PdfFileReader, PdfFileWriter

output = PdfFileWriter()

ipdf = PdfFileReader(open('pdf1.pdf', 'rb'))
wpdf = PdfFileReader(open('pdf2.pdf', 'rb'))

# same page counts - just loop once
for i in xrange(wpdf.getNumPages()):
    watermark = wpdf.getPage(i)    # get i-th watermark
    page = ipdf.getPage(i)         # get i-th page
    page.mergePage(watermark)      # marry them and add to output
    output.addPage(page)

with open('newfile.pdf', 'wb') as f:
   output.write(f)

Done.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

两个 pdf 水印 - 第一个的每一页和第二个的每一页 的相关文章

  • 使用 pycharm 进行交互式 shell 调试

    我是 PyCharm 新手 我已经使用 IDLE 很长时间了 在IDLE中执行脚本后使用Python对象非常方便 有没有办法在使用 PyCharm 与交互式 python shell 执行后使用脚本对象 例如 我们有一个 测试 项目 其中包
  • 查找具有不同强度/亮度的相似图像

    假设我有如下图像 我可以选择什么来比较两个图像之间的相似度 显然它们是相同的图像 只是亮度不同 我找不到任何可行的方法 目前我最好的选择是训练 cnn 或自动编码器并比较输出的特征向量 但这似乎有点矫枉过正 任何提示将不胜感激 相当强大的工
  • 使用 Python pdb 检查未处理异常原因的最简单方法是什么?

    我刚刚将所有单元测试数据从 JSON 转换为 YAML 现在代码中的某处引发了异常 更具体地说 这是打印的回溯 Traceback most recent call last File tests test addrtools py lin
  • Python 中的密码子生成

    我有这段代码 用于将 DNA 字符串转换为密码子列表 然后将此列表转换为具有各自氨基酸的字符串 然而 当我运行代码并且 DNA 字符串以一对核苷酸 例如 CT 而不是三联体结尾时 代码不会生成氨基酸序列 正如您在输出中看到的 from co
  • ValueError:无法将 DatetimeIndex 转换为 dtype datetime64[us]

    我正在尝试为 S P 500 ETF 创建一个包含 30 分钟数据的 PostgreSQL 表 spy30new 用于测试新插入的数据 来自具有 15 分钟数据的多个股票的表 全部 15 个 all15 在 dt 时间戳 和 instr 股
  • Jupyter Notebook 找不到 IQSharp

    我一直在尝试为 Quantum Katas 运行 Q 但在找到 Q 内核方面遇到了一些困难 唯一显示的内核是用于 Jupyter Notebook 的 Python 3 内核 奇怪的是 当我执行 jupyter kernalspec lis
  • 调整pandas read_sql_query NULL值处理?

    当我做 from sqlalchemy import create engine import pandas as pd engine create engine sqlite conn engine connect conn execut
  • 是否可以使用 csv.DictReader 保持列顺序?

    例如 我的 csv 有如下列 ID ID2 Date Job No Code 我需要以相同的顺序写回各列 这dict立即打乱了顺序 所以我相信这更多是读者的问题 蟒蛇的dicts 在 3 6 之前不维持顺序 但是 无论如何 在该版本中csv
  • 解码来自 S60 设备的 WBXML SyncML 消息

    我正在尝试解码来自诺基亚 N95 的 WBXML 编码的 SyncML 消息 我的第一次尝试是使用 python pywbxml 模块 它包装了对 libwbxml 的调用 用此方法解码消息会得到许多 标签以及 标签内的一大块二进制文件 我
  • python-messaging 无法处理 HTTP 请求

    我正在使用下面的代码尝试使用 python messaging 发送彩信https github com pmarti python messaging blob master doc tutorial mms rst https gith
  • 创建 Pyomo 约束的性能

    我正在用 pyomo 设置一个更大的能量优化问题 正如其他中提到的 设置花费了不合理的时间问题 https stackoverflow com questions 43413067 performance of pyomo to gener
  • 如何使用httplib2进行相互证书认证

    我正在使用 httplib2 从我的服务器向另一个 Web 服务发出请求 我们想要使用相互证书身份验证 我了解如何使用证书进行传出连接 h set certificate 但是如何检查应答服务器使用的证书 这张票 http code goo
  • 使用字典时如何避免 KeyError?

    现在我正在尝试编写汇编程序 但我不断收到此错误 Traceback most recent call last File Users Douglas Documents NeWS py line 44 in if item in regis
  • 使用 Python 中的 YouTube Data API v3 将视频上传到 YouTube 并将其添加到播放列表

    我编写了一个脚本 在 python 中使用 YouTube Data API v3 将视频上传到 YouTube 并借助中给出的示例示例代码 https developers google com youtube v3 guides upl
  • python中的unicode错误[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 在下面的代码中我收到错误mailSe
  • 在 Jupyter 笔记本中使用 PySpark 读取 XML

    我正在尝试读取 XML 文件 df spark read format com databricks spark xml load path to my xml 并收到以下错误 java lang ClassNotFoundExceptio
  • Python Sqlite3 获取 Sqlite 连接路径

    给定一个 sqlite3 连接对象 如何检索 sqlite3 文件的文件路径 The Python 连接对象 http github com python cpython blob master Modules sqlite connect
  • 在 Python 中,如果我有 unix 时间戳,如何将其插入 MySQL 日期时间字段?

    我正在使用 Python MySQLDB 我想将其插入 Mysql 中的 DATETIME 字段 我该如何使用cursor execute 来做到这一点 要将 UNIX 时间戳转换为 Python 日期时间对象 请使用datetime fr
  • 如何从 Django 中的链接设置预定义的表单值?

    我的项目是这样布局的 1 page has many categories 2 category belongs to page has many items 3 item belongs to category 当我进入一个页面时 我想修
  • python webdriver_manager chrome 自定义配置文件

    如何使 webdriver manager chrome 使用自定义 chrome 用户配置文件 我知道对于 selenium webdriver 我可以这样指定 options Options options add argument f

随机推荐

  • 为什么 boost::filesystem 中止而不是抛出异常?

    我正在将一些代码从 VS2010 使用 boost 1 55 迁移到 VS 2015 使用 boost 1 60 我最终得到了 Microsoft Visual C Runtime Library 的报告abort has been cal
  • 如何将 FieldValue.serverTimestamp() 转换为 Kotlin/Java 日期类

    我想保存在 Firestore 中创建帖子的日期 但我不想使用系统时间 相反 为了准确性 我想使用服务器时间戳 所以我正在使用FieldValue serverTimestamp 获取服务器时间戳 但保存它的变量的数据类型是日期 那么我该如
  • 有没有办法自动更新symfony2中的AppKernel?

    也许类似于generate bundle命令 生成包后提示更新AppKernel 或Composer 使用您安装的依赖项更新自动加载 我想要获得与generate bundle类似的功能 但我不想创建新的bundle 而是想添加刚刚下载的b
  • Azure 功能应用程序未显示在 Azure 门户中

    Azure 函数已从终端成功部署 部署过程中不涉及 CI CD 我正在将 http 触发器与 python 一起使用 我确实看到了init py function json host json在应用程序文件中 但是 这些函数未在 Azure
  • 如何在 C# 中正确处理空白、空行或空行

    我有一些正在处理文本文件的 C 代码 但我似乎无法让它在空白或空 空白 行中正常工作 My code while file EndOfStream line file ReadLine bool isComment line 0 line
  • Python 3 中有“foreach”函数吗?

    当我遇到可以用javascript完成的情况时 我总是想是否有一个foreach功能的话会很方便 我所说的 foreach 是指下面描述的函数 def foreach fn iterable for x in iterable fn x 他
  • Node Sass 尚不支持您当前的环境:Windows 64 位且运行时不受支持 (88)

    我已经尝试安装gulp sass最新版本与npm i gulp sass save dev一开始我遇到了很多错误 但后来解决了 但每当我尝试运行 gulp 时 我都会收到此错误 Error Node Sass does not yet su
  • 如何解决“请求的 URL 被拒绝。请咨询您的管理员。”错误?

    我有一个 ASP 应用程序 单击特定链接时 会执行一些 VB 脚本并显示 ASP 页面 但我得到的屏幕显示 信息不可用 请求的 URL 被拒绝 请咨询您的管理员 您的支持 ID 是 XXXXXXXXXXXXXXXXXXXXXX IIS 和事
  • UPS 测试追踪号码(有这样的东西吗?)

    我终于让 UPS 跟踪 API 正常工作了 或者至少我认为我是这样的 它给我一个 无效的跟踪号码 响应 我现在的问题是我没有要跟踪的包裹 有谁知道有什么资源可以让我测试来自 UPS 的虚假订单 或者有什么可以给出回应的资源 谢谢 我正在使用
  • 使用 Excel VBA 创建包含具有特定值的行的 Outlook 电子邮件正文

    我使用了一个示例来创建代码 使用 按钮 在我的文件中为红色 从 Excel 使用 Outlook 发送电子邮件 该代码有效 有一个预选的行范围 B1 K20 可以手动修改 这要归功于应用程序 输入框功能 Sub MAIL Dim rng A
  • Jenkins 运行并行脚本

    我是詹金斯的新手 需要一些帮助 我有 4 个 shell 脚本 test1 sh test2 sh test3 sh 和 test4 sh 我希望 test2 sh 仅在 test1 sh 成功运行时运行 而 test4 sh 仅在 tes
  • 如何使用点符号(如方括号符号)中的变量

    我一直在 Javascript 中使用方括号表示法来创建和调用关联数组 在这个例子中 我理解方括号表示法允许您使用变量来调用数组中的某个对象 你会如何用点表示法来做这样的事情 var item item 1 pen var x 1 cons
  • 如何选择BigQuery表中最新的分区?

    我尝试从日期分区 BigQuery 表中的最新分区中选择数据 但查询仍然从整个表中读取数据 我已经尝试过 据我所知 BigQuery不支持QUALIFY SELECT col FROM table WHERE PARTITIONTIME S
  • 如何限制ListView中列表项的显示

    我从 url 获取 XML 数据并使用自定义列表适配器在ListView 我只需要显示 10 个项目ListView 我怎样才能做到这一点 请告诉我 Thanks 适配器中仅放入 10 件物品 或者覆盖getCount 并返回10
  • Camera.PictureCallback 拍照后停止预览

    使用具有 Android API 16 的设备拍照后 预览停止工作 但当我使用具有 Android API 22 的设备时 应用程序工作正常 我有这个拍照代码 private Camera PictureCallback mPicture
  • 连接sqlite中未知数量的值

    我正在使用 sqlite 3 15 1 我有一张桌子master包含大学的主时间表 看起来像 day sem sec hour sub id MON 5 B 4 10IS51 MON 5 B 4 10IS53 MON 5 B 5 10CS5
  • 更改 Three.js 对象的几何形状

    我正在尝试更改 Three js 场景中某些对象的几何形状 我有一段几乎可以工作的代码 其中鼠标单击触发了更改 但遇到了以下问题 渲染的 形状仅在第一次鼠标单击时更改 即使几何图形也发生了变化通过以下每次点击都成功修改 使用 Three j
  • 如何让 nasm 在 MacOS 终端中作为命令工作?

    我一直在尝试让 nasm 作为终端中的命令工作 但似乎没有任何效果 我只是不断收到错误 nasm error unable to find utility nasm not a developer tool or in PATH 因此 首先
  • 在javaScript中刷新页面后如何更新数据库?

    我想给用户机会更改产品的评分值 但刷新页面后不起作用 例如 当他访问一个他没有评分的新产品时 他可以在刷新页面之前一次又一次地更改评分值 但刷新页面后 他可以更改同一产品的评级值 但 ratingValue2 的警报不起作用 数据库也没有更
  • 两个 pdf 水印 - 第一个的每一页和第二个的每一页

    我有两个长度相同的 pdf 文件 比如说 pdf1 pdf 和 pdf2 pdf 我正在尝试使用 pdf2 pdf 为 pdf1 pdf 的每一页添加水印 即 pdf1 pdf 第 1 页与 pdf2 pdf 第 1 页 pdf1 pdf