如何将PyPDF2中addLink生成的矩形链接外框颜色从黑色改为蓝色
解决方案
PyPDF2的addLink方法没有直接暴露边框颜色配置参数,你可以通过手动修改链接注释对象的/C属性实现颜色调整,该属性是PDF规范中定义的链接注释边框颜色控制字段。
修改后的完整代码
from PyPDF2 import PdfFileWriter from pathlib import Path output = PdfFileWriter() output.addBlankPage(width=72, height=72) # 索引为0的第1页 output.addBlankPage(width=72, height=72) # 索引为1的第2页 # 添加链接 output.addLink(0, 1, [10, 10, 50, 30], border=[0, 0, 1]) # 新增修改边框颜色的逻辑 # 获取第0页的第一个注释(就是刚添加的链接注释) link_annot = output.getPage(0)['/Annots'][0].getObject() # 设置边框颜色为蓝色,RGB格式,每个值范围0~1 link_annot.update({ "/C": [0, 0, 1] }) with Path("link_example.pdf").open(mode="wb") as output_file: output.write(output_file)
补充说明
- 颜色参数是三个0~1之间的浮点数组成的数组,对应RGB三通道的占比,可按需调整:
- 红色:
[1, 0, 0] - 绿色:
[0, 1, 0] - 自定义颜色可以先把RGB 0~255的数值除以255得到对应参数
- 红色:
- 如果同一个页面添加了多个链接,按添加顺序对应
/Annots数组的下标,修改对应下标的注释对象即可
内容的提问来源于stack exchange,提问作者Joracosu
相关产品推荐
相关产品推荐

