python脚本(Word转PDF格式小工具)

这篇具有很好参考价值的文章主要介绍了python脚本(Word转PDF格式小工具)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QLabel, QMessageBox
from PyQt5.QtCore import Qt
import sys
import os
from comtypes import client


#文件转换脚本
class FileDropWidget(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        layout = QVBoxLayout()
        # 设置窗口标题
        self.setWindowTitle("word/pdf")
        # 隐藏标题栏和控制按钮
        self.setWindowFlags(Qt.FramelessWindowHint)
        # 设置窗口置于顶层
        self.setWindowFlags(Qt.WindowStaysOnTopHint)
        # 获取屏幕的可用几何区域
        screen_geometry = QApplication.desktop().availableGeometry()
        # 设置窗口大小
        window_width = 400
        window_height = 300
        self.resize(window_width, window_height)
        # 将窗口移动到屏幕中心
        x = (screen_geometry.width() - window_width) // 2
        y = (screen_geometry.height() - window_height) // 2
        self.move(x, y)
        #拖拉区域代码
        label = QLabel("拖放Word文件到此区域")
        label.setAlignment(Qt.AlignCenter)
        label.setStyleSheet("""
            QLabel {
                background-color: #EAF2F8;
                font-family: Arial;
                font-size: 35px;
                font-weight: 40px;
                color: #333333;
                padding: 10px;
                border: 4px dashed #CCCCCC;
                border-radius: 30px;
            }
        """)

        label.setAcceptDrops(True)
        label.installEventFilter(self)

        layout.addWidget(label)
        self.setLayout(layout)


    def eventFilter(self, obj, event):
        if event.type() == event.DragEnter:
            if event.mimeData().hasUrls():
                event.acceptProposedAction()
        elif event.type() == event.Drop:
            if event.mimeData().hasUrls():
                files = [url.toLocalFile() for url in event.mimeData().urls()]
                self.handleDroppedFiles(files)
            event.acceptProposedAction()
        return super().eventFilter(obj, event)

    def handleDroppedFiles(self, files):
        for file in files:
            if file.endswith('.docx') or file.endswith('.doc'):
                self.convertToPDF(file)
            else:
                self.showErrorMessage("请拖放Word文件或类似文件!")

    def convertToPDF(self, docx_file):
        word = client.CreateObject("Word.Application")
        word.Visible = False
        doc = word.Documents.Open(docx_file)
        pdf_file = os.path.splitext(docx_file)[0] + ".pdf"
        doc.SaveAs(pdf_file, FileFormat=17)
        doc.Close()

        # 关闭 Word 窗口
        word.Quit()

        # 显示转换成功的消息框
        reply = QMessageBox.question(self, "转换成功", f"已将Word文件转换为PDF文件:\n{pdf_file}\n\n是否继续拖放Word文件",
                                     QMessageBox.Yes | QMessageBox.No)

        # 根据用户的选择执行相应的操作
        if reply == QMessageBox.Yes:
            # 用户选择继续执行代码
            print("继续执行代码...")
        elif reply == QMessageBox.No:
            # 用户选择关闭 Word/PDF 窗口
            os.startfile(pdf_file)  # 打开 PDF 文件

if __name__ == "__main__":
    app = QApplication(sys.argv)
    widget = FileDropWidget()
    widget.resize(300, 200)
    widget.show()
    sys.exit(app.exec_())

拖入word文件到规定区域,即可生成PDF格式文件
python脚本(Word转PDF格式小工具),Python笔记,python,word,pdf文章来源地址https://www.toymoban.com/news/detail-521171.html

到了这里,关于python脚本(Word转PDF格式小工具)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 100天精通Python丨办公效率篇 —— 12、Python自动化操作 office-word(word转pdf、转docx、段落、表格、标题、页面、格式)

    本文收录于 《100天精通Python专栏 - 快速入门到黑科技》专栏 ,是由 CSDN 内容合伙人丨全站排名 Top 4 的硬核博主 不吃西红柿 倾力打造。 基础知识篇以理论知识为主 ,旨在帮助没有语言基础的小伙伴,学习我整理成体系的精华知识,快速入门构建起知识框架; 黑科技应用篇

    2023年04月18日
    浏览(55)
  • Word转PDF工具哪家安全?推荐好用的文件格式转换工具

    Word文档是我们最常见也是最常用的办公软件,想必大家都知道了Word操作起来十分的简单,而且功能也是比较齐全的。随着科技的不断进步,如今也是有越来越多类型的办公文档,PDF就是其中之一,那么word转pdf怎么转?Word转PDF工具有吗?下面文章就给大家推荐一下小圆象PDF转换

    2024年02月13日
    浏览(52)
  • Java【代码 16】将word、excel文件转换为pdf格式和将pdf文档转换为image格式工具类分享(Gitee源码)aspose转换中文乱码问题处理

    感谢小伙伴儿的分享: ● 不羁 ● 郭中天 整合调整后的工具类Gitee地址:https://gitee.com/yuanzhengme/java_application_aspose_demo ● WordToPdfUtil用于将word文档转换为pdf格式的工具类 ● ExcelToPdfUtil用于将excel文档转换为pdf格式的工具类 ● PdfToImageUtil用于将pdf文档转换为image格式的工具类

    2024年01月24日
    浏览(86)
  • Python 实现Word转PDF

    通过将 Word 文档转换为 PDF,您可以确保文档在不同设备上呈现一致,并防止其他人对文档内容进行非授权修改。此外,在你需要打印文档时,转换为PDF还能确保打印输出的准确性。本文将介绍如何使用 Python 库将Word文档转换为PDF格式 。 Python 将 Word DOCX/DOC 转换为 PDF Python 将

    2024年02月08日
    浏览(42)
  • 使用python将PDF转word

    实现功能,将程序所在当前路径下的所有PDF文件转化为word 上述代码中使用了  os  模块来获取当前路径及构建文件路径,使用了  pdf2docx  模块来进行 PDF 到 DOCX 的转换。通过遍历当前路径下的所有文件和文件夹,并判断是否是 PDF 文件,将其转换为 DOCX 文件。 可以使用以下

    2024年02月15日
    浏览(77)
  • 使用Python将word转换为pdf

    使用Python可以将多个word文件一起转为pdf,操作比较便捷,可以实现自动化办公。 代码如下: 运行结果: 欢迎大家查看作者的主页,主页中还有关于编程与算法方面的更多内容,欢迎大家相互沟通学习。

    2024年02月15日
    浏览(67)
  • 使用Python批量将PDF转Word

            以下全部代码无法完美对图片、表格等非文字形式的内容转化。要较好的效果需要使用光学字符分析等方法进行转化         我懒,不想将代码模块拆分出来写注释         除代码1中有详细注释外,剩下的代码仅在关键部分进行注释         不使用线程,挨

    2024年04月13日
    浏览(44)
  • 如何利用python将pdf文档转为word?

    1.前言 有些时候,我们需要将pdf文档转换为word文档进行处理,但市面上的一些pdf软件往往需要付费才能使用。那么作为一名技术人员,如何才能实现pdf转word自由? 2.准备工作 提前安装好python的环境,并且安装对应的第三方包: 3.实现方法 3.1 convert方法 3.2 parse方法 3.3 仅转换其

    2024年02月13日
    浏览(50)
  • 使用Python批量将Word文件转为PDF文件

    说明:在使用Minio服务器时,无法对word文件预览,如果有需要的话,可以将word文件转为pdf文件,再存储到Minio中,本文介绍如何批量将word文件,转为pdf格式的文件; 首先,需要安装一个库, pywin32 ; 可以在cmd窗口敲下面的命令安装,使用阿里云镜像: 如果你使用的是pycha

    2024年02月12日
    浏览(60)
  • Word模板替换,并转PDF格式输出

    Poi-tl参考文档地址:http://deepoove.com/poi-tl/1.8.x/#hack-loop-table         绿色部分是直接渲染的,对应map中的key-value,蓝色部分是绑定collections对象,进行遍历循环集合数据         转换的pdf有水印,去水印很方便, 加载License(要买)即可 封装一个工具类 https://blog.csdn.net

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包