name: pdf-watermark description: "PDF 水印新增和移除功能,支援文本和影像水印" auth: 午餐肉
說:"給這個PDF新增水印 '機密檔案'"
或:"在PDF上新增水印,文字是公司名稱,位置在右下角"
說:"給PDF新增logo水印"
或:"用這個圖片作為PDF水印"
說:"移除這個PDF的水印"
或:"清除PDF中的所有水印"
from PyPDF2 import PdfReader, PdfWriter
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter
import io
def add_text_watermark(input_pdf, output_pdf, watermark_text):
"""新增文本水印到PDF"""
reader = PdfReader(input_pdf)
writer = PdfWriter()
for page_num in range(len(reader.pages)):
page = reader.pages[page_num]
# 建立水印
packet = io.BytesIO()
can = canvas.Canvas(packet, pagesize=letter)
can.setFont("Helvetica", 40)
can.setFillColorRGB(0.5, 0.5, 0.5, alpha=0.3) # 灰色,半透明
can.rotate(45)
can.drawString(200, 100, watermark_text)
can.save()
# 合併水印
packet.seek(0)
watermark = PdfReader(packet)
watermark_page = watermark.pages[0]
page.merge_page(watermark_page)
writer.add_page(page)
with open(output_pdf, "wb") as output_file:
writer.write(output_file)
7w4.net小蔥技能站收錄全網優質技能,值得收藏。
整體質量中等偏上。功能比較實用,支援文本和影像水印,有多種位置可選。中文支援做得不錯,中文水印能正常顯示。缺點是有些功能不完整,比如移除水印功能基本無法使用;另外兩個檔案功能有些重複,容易讓人困惑。適合有基本需求的使用者,但如果需要更專業的功能可能不夠用。