pdf小工具

import tkinter as tk
from tkinter import filedialog
from typing import Union, Tuple
from reportlab.lib import units
from reportlab.pdfgen import canvas
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
from PyPDF4 import PdfFileWriter, PdfFileReader
from typing import List
from pikepdf import Pdf, Page, Rectangle
import PyPDF4
from pdf2docx import Converter
import datetime
pdfmetrics.registerFont(TTFont('msyh', r'./msyh.ttc'))

'''

用于生成包含content文字内容的水印pdf文件

content: 水印文本内容
filename: 导出的水印文件名
width: 画布宽度,单位:mm
height: 画布高度,单位:mm
font: 对应注册的字体代号
fontsize: 字号大小
angle: 旋转角度
text_stroke_color_rgb: 文字轮廓rgb色
text_fill_color_rgb: 文字填充rgb色
text_fill_alpha: 文字透明度


'''



# 创建主窗口
root = tk.Tk()
root.title("PDF使用小工具byZY")
root.geometry('425x150')
# 创建文本输入框
label = tk.Label(root, text="水印:文本框输入水印文字,点击开始添加水印按钮\n删除或保留页码:文本框输入需要删除或保留的页码,点击删除或保留页\n如1,3,5,7,9使用英文逗号分隔")
label.pack()
entry = tk.Entry(root)
entry.pack()



def get_input_text():
    entered_text = entry.get()
    # print("Entered text:", entered_text)
    return entered_text



def create_wartmark(content: str,
                    filename: str,
                    width: Union[int, float],
                    height: Union[int, float],
                    font: str,
                    fontsize: int,
                    angle: Union[int, float] = 45,
                    text_stroke_color_rgb: Tuple[int, int, int] = (0, 0, 0),
                    text_fill_color_rgb: Tuple[int, int, int] = (0, 0, 0),
                    text_fill_alpha: Union[int, float] = 1) -> None:
    # 创建PDF文件,指定文件名及尺寸,以像素为单位
    c = canvas.Canvas(f'{filename}.pdf&
  • 13
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值