本站一个简单的针对扫描版pdf压缩的软件的修改版,加了多文件处理和多线程处理

查看 118|回复 1
作者:858983646   
全部问kimi改的,感谢@duskdust 公布的源码,感谢@Arcticlyc 的编译指导    加了选择多文件批量处理和多线程处理,可以直接跑满cpu
将exe放置在pdf同目录运行就好,会处理同目录所有选中的pdf,功能和原版一样,可以移除复对象,压缩图片,二值化压缩,压缩图片加了个设置压缩质量(填1-100)。
全靠timi做的,水平有限问了一天问不出来怎么做图形化界面,放弃了
注意:选择多个文件注意是要用英文的,  中文的不可以。
链接:https://pan.baidu.com/s/1Y7WuIokzuNE4Cpag0-UmXg?pwd=mkg4 提取码:mkg4 密码52pojie


IMG_20240606_194948.jpg (276.75 KB, 下载次数: 0)
下载附件
2024-6-6 19:49 上传



IMG_20240606_182906.jpg (105.37 KB, 下载次数: 0)
下载附件
2024-6-6 19:48 上传



IMG_20240606_183448.jpg (235.3 KB, 下载次数: 0)
下载附件
2024-6-6 19:48 上传



IMG_20240606_183506.jpg (123.38 KB, 下载次数: 0)
下载附件
2024-6-6 19:48 上传

源码见下面
[Python] 纯文本查看 复制代码# 导入必要的库
import os
import concurrent.futures
from pypdf import PdfReader, PdfWriter
from tqdm import tqdm
from PIL import Image, ImageEnhance
from io import BytesIO
import multiprocessing

# 将图片转换为黑白,并增强对比度、亮度、锐度和色彩
def blacky(im):
    # 转换图片为灰度模式
    im = im.convert('L')
    # 增强对比度
    im = ImageEnhance.Contrast(im).enhance(3)
    # 增强亮度
    im = ImageEnhance.Brightness(im).enhance(1.5)
    # 增强锐度
    im = ImageEnhance.Sharpness(im).enhance(2)
    # 增强色彩
    im = ImageEnhance.Color(im).enhance(1.5)
     
    # 设置阈值
    threshold = 128
    # 创建阈值表
    table = [0 if i  5:
                raise ValueError
            return choice
        except ValueError:
            print("输入无效。请输入1到5之间的数字。")

# 从用户获取图片质量值
def input_quality(choice):
    if choice == 3:
        while True:
            quality = input("请输入图片质量(1-100):")
            if quality.isdigit() and 1

文件, 书签

yhny   

比较关心的是PDF显示质量影响大不大?
您需要登录后才可以回帖 登录 | 立即注册

返回顶部