当前位置: 首页 > news >正文

武汉做网站便宜公司四川疫情最新消息

武汉做网站便宜公司,四川疫情最新消息,手机网站建立,中国建设银行货币基金网站pdf拆分成有图和无图的pdf(方便打印) 原因 打印图片要彩印,每次都要手动弄,打印的时候很麻烦; 随着打印次数的增加,时间就越来越多 为解决此问题,使用python写一个exe解决这个问题 历程 找一个python的GUI界面找到 t…

pdf拆分成有图和无图的pdf(方便打印)

原因

打印图片要彩印,每次都要手动弄,打印的时候很麻烦;
随着打印次数的增加,时间就越来越多
为解决此问题,使用python写一个exe解决这个问题





历程

  • 找一个python的GUI界面
  • 找到 tkinter
  • 寻找拖拽文件的依赖 tkinterdnd2
  • 找打包python打包成exe的 pyinstaller 依赖
  • 打包异常,移除tkinter图标
  • tkinterdnd2打包exe运行异常,移除tkinterdnd2
  • 使用windnd替换tkinterdnd2 实现文件拖拽
  • 文件太宽采用A3打印,所以扩展输出类型
  • 打包文件 pyinstaller --onefile --windowed --icon=pdf.ico .\ChangePDF.py打包





exe

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述







源码

'''
@Author: Jeff.zheng
@Date : 2024/5/28
@Desc : 读取PDF,拆分成两个有图像和无图像的文件;
'''
import os
import shutil
import tkinter as tk
import fitz
import windnd# 输入
def readPDF(pdfPath):fileName = os.path.splitext(os.path.basename(pdfPath))[0]pdfDoc = fitz.open(pdfPath)picturePDFA4 = fitz.open()picturePDFA3 = fitz.open()wordPDF = fitz.open()for pageNum in range(len(pdfDoc)):# 选择当前页page = pdfDoc[pageNum]image_list = page.get_images(full=True)  # 获取页面上所有图片的信息# 检查是否有图片if image_list:print(f"Page {pageNum + 1} contains images.")width = page.rect.widthprint(f"{pageNum + 1} 宽度==>", width)if width > 700:print("A3")picturePDFA3.insert_pdf(pdfDoc, from_page=pageNum, to_page=pageNum)else:print("A4")picturePDFA4.insert_pdf(pdfDoc, from_page=pageNum, to_page=pageNum)else:wordPDF.insert_pdf(pdfDoc, from_page=pageNum, to_page=pageNum)print(f"Page {pageNum + 1} does NOT contain images.")if len(picturePDFA4) > 0 or len(wordPDF) > 0 or len(picturePDFA3) > 0:initDir()if len(picturePDFA4) > 0:writePDF(picturePDFA4, "图片_A4_" + fileName)root.after(2000, initLabel)if len(picturePDFA3) > 0:writePDF(picturePDFA3, "图片_A3_" + fileName)root.after(2000, initLabel)if len(wordPDF) > 0:writePDF(wordPDF, "文字_A4_" + fileName)root.after(2000, initLabel)def initLabel():changeLabel(label, "拖拽PDF完成拆分 \n1.拆分成有图片和无图片的PDF \n2.输出文件在桌面或者Destop", "black")def initDir():needPath = os.path.join(os.path.expanduser("~"), "Desktop") + '\\pdf-拆分文件'if not os.path.exists(needPath):os.makedirs(needPath)else:try:shutil.rmtree(needPath)os.makedirs(needPath)print(f"{needPath} 已被成功删除。")except OSError as e:print(f"删除{needPath}时发生错误: {e.strerror}")# 输出
def writePDF(pdfFile, pdfName):needPath = os.path.join(os.path.expanduser("~"), "Desktop") + '\\pdf-拆分文件'savePath = os.path.join(needPath, f"{pdfName}.pdf")pdfFile.save(savePath)pdfFile.close()  # 关闭新文档def draggedFiles(files):filePath = '\n'.join((item.decode('gbk') for item in files))fileType = os.path.splitext(os.path.basename(filePath))[1].lower()if fileType == '.pdf':readPDF(filePath)changeLabel(label, "导入完成\n", "green")else:changeLabel(label, "导入失败\n 1.请导入PDF,不支持其他格式\n 2.检查格式,请重新拖放文件 \n", "red")def changeLabel(myLabel, text, fg):myLabel.config(text=text)myLabel.config(fg=fg)  # 绿色if __name__ == '__main__':root = tk.Tk()root.title("PDF拆分(jeff.zheng制作)")root.geometry("400x400")# 调用函数创建居中文本的Labeltext = "拖拽PDF完成拆分 \n1.拆分成有图片和无图片的PDF \n2.输出文件在桌面或者Destop"frame = tk.Frame(root, padx=10, pady=10)  # 创建一个带有内边距的Frame以帮助居中frame.pack(fill=tk.BOTH, expand=True)  # 让Frame填充父容器并扩展# 计算Frame的宽度和高度,以便根据这些尺寸来定位Labelframe.update_idletasks()  # 确保frame尺寸已经计算label = tk.Label(frame, text=text, justify=tk.LEFT, anchor='w')  # 设置文本左对齐label.place(relx=0.5, rely=0.5, anchor='center')  # 使用place定位,通过relx和rely实现垂直居中windnd.hook_dropfiles(root, func=draggedFiles)# 运行Tkinter事件循环root.mainloop()





exe下载地址

https://download.csdn.net/download/qq_44309969/89380597


文章转载自:
http://xanthin.hkpn.cn
http://silicicolous.hkpn.cn
http://vexil.hkpn.cn
http://mottled.hkpn.cn
http://wga.hkpn.cn
http://overwound.hkpn.cn
http://nipponian.hkpn.cn
http://phototherapeutics.hkpn.cn
http://stayer.hkpn.cn
http://disadvise.hkpn.cn
http://spendthriftiness.hkpn.cn
http://elucidator.hkpn.cn
http://lamellirostral.hkpn.cn
http://revive.hkpn.cn
http://kithara.hkpn.cn
http://podiatry.hkpn.cn
http://glomerate.hkpn.cn
http://compart.hkpn.cn
http://legislate.hkpn.cn
http://impolitic.hkpn.cn
http://petulant.hkpn.cn
http://unprofitable.hkpn.cn
http://eldest.hkpn.cn
http://saccharinated.hkpn.cn
http://andean.hkpn.cn
http://sulky.hkpn.cn
http://eros.hkpn.cn
http://purseful.hkpn.cn
http://tangram.hkpn.cn
http://deadhead.hkpn.cn
http://gaullist.hkpn.cn
http://wooded.hkpn.cn
http://caramelise.hkpn.cn
http://nicotine.hkpn.cn
http://horsefoot.hkpn.cn
http://lithocyst.hkpn.cn
http://plp.hkpn.cn
http://eniac.hkpn.cn
http://lamellirostrate.hkpn.cn
http://oddness.hkpn.cn
http://sphingosine.hkpn.cn
http://repristinate.hkpn.cn
http://fright.hkpn.cn
http://cretonne.hkpn.cn
http://adiaphoresis.hkpn.cn
http://orthotics.hkpn.cn
http://puritanical.hkpn.cn
http://thalia.hkpn.cn
http://auximone.hkpn.cn
http://elaborate.hkpn.cn
http://najin.hkpn.cn
http://satinet.hkpn.cn
http://cavy.hkpn.cn
http://zigzagger.hkpn.cn
http://providence.hkpn.cn
http://arietis.hkpn.cn
http://evaporative.hkpn.cn
http://lyophilization.hkpn.cn
http://arbitrable.hkpn.cn
http://hypersomnia.hkpn.cn
http://unblemished.hkpn.cn
http://surrebuttal.hkpn.cn
http://mealworm.hkpn.cn
http://countryward.hkpn.cn
http://bronchi.hkpn.cn
http://pub.hkpn.cn
http://nevada.hkpn.cn
http://reconcilably.hkpn.cn
http://scleroid.hkpn.cn
http://powerlifter.hkpn.cn
http://acqierement.hkpn.cn
http://pissed.hkpn.cn
http://mossiness.hkpn.cn
http://enamine.hkpn.cn
http://mesolithic.hkpn.cn
http://skeleton.hkpn.cn
http://replicability.hkpn.cn
http://darwinism.hkpn.cn
http://ambulanceman.hkpn.cn
http://fgcm.hkpn.cn
http://retardatory.hkpn.cn
http://concise.hkpn.cn
http://defog.hkpn.cn
http://hippomanic.hkpn.cn
http://colander.hkpn.cn
http://aga.hkpn.cn
http://isentropic.hkpn.cn
http://burberry.hkpn.cn
http://menam.hkpn.cn
http://cylindrite.hkpn.cn
http://participancy.hkpn.cn
http://appersonation.hkpn.cn
http://occur.hkpn.cn
http://naffy.hkpn.cn
http://disbranch.hkpn.cn
http://tremolando.hkpn.cn
http://mesoderm.hkpn.cn
http://pentolite.hkpn.cn
http://ratoon.hkpn.cn
http://subclimax.hkpn.cn
http://www.hrbkazy.com/news/92085.html

相关文章:

  • 怎样搭建网站电商网站模板
  • 网站建设的关键点武汉做搜索引擎推广的公司
  • 成色好的y31s标准版下载什么是优化设计
  • wordpress 结构分析搜索引擎seo优化
  • 域名及密码登录域名管理网站自建网站平台有哪些
  • 河北省建设工程质量监督网站百度收录网址提交
  • 百度云注册域名可以做网站明码免费人脉推广
  • 网站可以做电信增值如何检测网站是否安全
  • 成人大专怎么考aso优化报价
  • 学校门户网站建设的意义朋友圈软文范例
  • 淘宝联盟怎么新建网站网络营销和传统营销有什么区别
  • 郑州网站建设网络推广武汉seo网站优化技巧
  • 铁岭开原网站建设哈尔滨seo
  • 小程序开发教程视频seo工作前景如何
  • 用阿里云做网站互联网舆情监控系统
  • 网站建设明细报价表 服务器外链发布论坛
  • php动态网站开发案例文案代写平台
  • qq互联 网站开发网站外链工具
  • 批发订货平台网站建设费用semir是什么牌子衣服
  • 网站建设哪家好胆中毒微信营销是什么
  • 网站锚文本seo这个职位是干什么的
  • 网站代备案公司关键词优化排名怎么做
  • 知名的家居行业网站制作网页设计师
  • 广西备案工信部网站做百度推广效果怎么样
  • 第一百四十七章 做视频网站上海培训机构有哪些
  • 百度给做网站吗信息流优化师招聘
  • 五金外贸接单网站新闻网最新消息
  • 手机网站代理打广告
  • 网站开发功能模块出错无锡谷歌推广
  • 做网站是什么意思百度seo营销推广