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

Python制作简易PDF查看工具——PDFViewerV1.0

PDFViewer PDF浏览工具是使用Python语言使用PyQt5开发界面PDF解析使用PyMuPDF开源模块开发的PDF查看工具已经实现基本翻页浏览、OCR文字识别基于开源主流文字识别模型实现、内容查找高亮显示、文件截取、文件合并、转成图片、图片生成PDF等功能其它功能在进一步开发完善当中如果有想一起开发的朋友可以留言。本软件完全免费自由使用。工具介绍软件界面简洁有菜单栏、工具栏和状态栏目前实现的功能较为简单可以打开加载PDF文件或者在左侧目录树中单击PDF文件在右侧浏览区中将显示PDF文件的内容如果下图所示工具左侧显示目录树由于这是一款专门的PDF阅读工具因此方便快速定位PDF文件目录树中过滤只显示PDF文件其他文件不会显示在目录树中右侧为阅览区打开的文件加载到该区域阅读。目前本软件只实现了简单的上、下翻页功能其他更多功能后续会逐步完善。软件实现Python语言开发采用PyQt5开发图形界面界面使用QtDesigner设计所有图标资源均由Pyisntaller打包在一个可扫行文件当中。感兴趣的朋友可以交流。放大缩小功能补充放大、缩小功能完善翻页功能效果如下图所示查找功能增加查找功能实现对查找结果高亮显示如下图所示点击“查找”工具按钮输入要查找的文字内容点击OK查找结果如下图制作查找工具栏可以设置显示或者隐藏查找工具栏默认只显示查找按钮隐藏工具栏。工具栏使用方法在搜索框内输入查找内容直接回车或者点击查找按钮返回查找结果并高亮显示。搜索结果显示在打开文件下方显示查找到匹配文本所在的页、行以及当前行的上、下文。图片导出增加导出图片功能可以设置导出图片的质量1级-5级效果如下导出图片存储于当前文件夹的pics文件夹中如下图所示增加将当前页面导出图片功能可以将当前页面导出图片存放在当前目录的pics文件夹中。图片生成PDF文件对应将pdf导出图片有时候也需要将图片生成一个pdf因此增加一个将多张图片生成pdf文件的功能可以将选中的图片合并生成一个PDF文档。提取页面文件页面提取生成新的PDF文件提取页面可以选择连续或者以逗号分隔的不连续页面如下图所示提取后在当前文件夹下生成 extracted_pages.pdf如下图所示修改切换文件关闭查找搜索结果显示。合并PDF文档对应从PDF中提取部分页面生成新的PDF文档本功能实现了将多个PDF文档合并成一个新的PDF文件。如下图所示单击合并文件按钮在弹出的对话框中选择要合并的文档如下所示单击“打开”后弹出对话框提示保存合并后输出文件的路径如图单击“保存”后在指定文件夹下生成合并后的文件如下图所示页面跳转对于较大的pdf文件几十甚至几百页的大文件上下翻页跳转很不方便增加跳转工具可在跳转框中转入想要跳转的页码单击页面跳转按钮或者直接回车实现直接跳到指定页面浏览。如下图所示OCR文字识别打开PDF文件后单击工具栏中OCR文字识别按钮即可实现当前页面的文字识别识别结果显示在弹出的对话框中。如下图所示单击工具栏中OCR文字识别全文识别按钮即可实现所有页面的文字识别识别结果显示在弹出的对话框中。如下图所示页面旋转发现经常存在有的PDF文件或者图片转换生成的PDF页面方向是横着的这样影响阅读效果因此补充了旋转页面的功能还可以对旋转后页面的文件进行保存这样以后再打开文件的时候方向就正确了。效果如下打开一个文件点击工具栏“逆时针旋转”按钮页面向左逆时针转动90度如下图单击工具栏保存按钮可以将旋转后的文档另存到本地文件。关于在文件菜单中点击“关于”或者按CtrlA组合键可以弹出关于对话框在里面点击确定可以查看使用说明。欢迎大家使用有好的功能建议可留言。感谢支持本工具将不定期持续更新请大家多多支持大家的支持是更新的源动力。目前本工具已初步成为一个功能简单实用的PDF查看工具更多功能后续会持续改进完善。欢迎大家留言提出宝贵意见。同时有想体验的朋友也可以留言。本工具下载文件已更新下载地址https://download.csdn.net/download/urhero/90279429

相关文章:

Python制作简易PDF查看工具——PDFViewerV1.0

PDFViewer PDF浏览工具,是使用Python语言(使用PyQt5开发界面,PDF解析使用PyMuPDF开源模块)开发的PDF查看工具,已经实现基本翻页浏览、OCR文字识别(基于开源主流文字识别模型实现)、内容查找高亮…...

Medusa小程序:微信、支付宝等小程序平台对接的完整指南

Medusa小程序:微信、支付宝等小程序平台对接的完整指南 【免费下载链接】medusa 项目提供了构建数字商务所需的组件和服务,旨在简化和加速电子商务平台的开发工作流程。 项目地址: https://gitcode.com/GitHub_Trending/me/medusa Medusa是一个强…...

这份榜单够用!盘点2026年用户挚爱的一键生成论文工具

一天写完毕业论文在2026年已不再是天方夜谭。以下是2026年最炸裂、实测能大幅提速的一键生成论文工具,覆盖选题构思、文献综述、数据整理、格式排版等核心场景,高效搞定论文不再只是梦想。 一、全流程王者:一站式搞定论文全链路(一…...

导师严选!盘点2026年抢手爆款的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、降重润色四大核心场景,帮你高效搞定论文,轻松应对学术挑战。 一、全流程王者:一站式搞定论文全链路…...

简易CPU设计入门:算术逻辑单元(五)

专栏导航 上一篇:简易CPU设计入门:算术逻辑单元(四) 专栏目录 下一篇:简易CPU设计入门:算术逻辑单元(六) 项目代码下载 请大家首先准备好本项目所用的源代码。如果已经下载了&am…...

Kali Linux 2026.1 发布 (2026 主题 BackTrack 模式) - 领先的渗透测试发行版

Kali Linux 2026.1 发布 (2026 主题 & BackTrack 模式) - 领先的渗透测试发行版 The most advanced Penetration Testing Distribution 请访问原文链接:https://sysin.org/blog/kali-linux/ 查看最新版。原创作品,转载请保留出处。 作者主页&…...

网页实现文字转语音朗读功能

SpeechSynthesisUtterance是HTML5中新增的API&#xff0c;用于将指定文字合成为对应的语音。 <button onclick"play()">朗读</button> <script>var utterThis new SpeechSynthesisUtterance();utterThis.text "hello word";utterThis…...

PlayCover终极指南:三步在Mac上畅玩iOS游戏与应用

PlayCover终极指南&#xff1a;三步在Mac上畅玩iOS游戏与应用 【免费下载链接】PlayCover Community fork of PlayCover 项目地址: https://gitcode.com/gh_mirrors/pl/PlayCover 还在为心爱的iOS游戏无法在Mac上体验而烦恼吗&#xff1f;PlayCover为你打开了一扇全新的…...

保姆级教程:在RK3568开发板上配置RK809-5 PMIC的Android设备树(附完整代码)

RK3568开发板实战&#xff1a;RK809-5 PMIC设备树配置全流程解析 当你在RK3568开发板上第一次按下电源键&#xff0c;却只看到一片黑屏时&#xff0c;作为嵌入式工程师的直觉会告诉你&#xff1a;PMIC配置出了问题。RK809-5这颗电源管理芯片就像系统的"心脏"&#xf…...

Uvicorn性能调优:异步I/O模型选择与配置指南

Uvicorn性能调优&#xff1a;异步I/O模型选择与配置指南 【免费下载链接】uvicorn An ASGI web server, for Python. &#x1f984; 项目地址: https://gitcode.com/GitHub_Trending/uv/uvicorn Uvicorn作为Python生态中最受欢迎的ASGI服务器&#xff0c;其性能表现直接…...

MediaPipe Holistic实战效果:一张照片生成全身骨骼图,效果超乎想象

MediaPipe Holistic实战效果&#xff1a;一张照片生成全身骨骼图&#xff0c;效果超乎想象 1. 引言&#xff1a;当AI遇见全身感知 想象一下&#xff0c;你只需要上传一张普通的全身照片&#xff0c;AI就能自动识别出你的面部表情、手势动作和身体姿态&#xff0c;并生成一张精…...

【Python内存管理终极指南】:20年专家亲授智能体内存优化的5大核心配置步骤

第一章&#xff1a;Python智能体内存管理的底层原理与认知重构Python 的内存管理并非由开发者显式控制&#xff0c;而是通过一套高度协同的自动化机制实现——它融合了引用计数、循环垃圾回收&#xff08;GC&#xff09;与内存池&#xff08;pymalloc&#xff09;三层结构。这种…...

asp毕业设计下载(全套源码+配套论文)——基于asp+access的公司门户网站设计与实现

基于aspaccess的公司门户网站设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于aspaccess的公司门户网站设计与实现&#xff0c;更多精选毕业设计项目实例见文末哦。 文章目录&#xff1a; 基于aspaccess的公司门户网站设计与实现&a…...

asp毕业设计下载(全套源码+配套论文)——基于asp+access的仓储物流管理系统设计与实现

基于aspaccess的仓储物流管理系统设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于aspaccess的仓储物流管理系统设计与实现&#xff0c;更多精选毕业设计项目实例见文末哦。 文章目录&#xff1a; 基于aspaccess的仓储物流管理系统…...

asp毕业设计下载(全套源码+配套论文)——基于asp+access的办公系统设计与实现

基于aspaccess的办公系统设计与实现&#xff08;毕业论文程序源码&#xff09; 大家好&#xff0c;今天给大家介绍基于aspaccess的办公系统设计与实现&#xff0c;更多精选毕业设计项目实例见文末哦。 文章目录&#xff1a; 基于aspaccess的办公系统设计与实现&#xff08;毕…...

消防给水系统控制:西门子 S7 - 200 与昆仑通态触摸屏的奇妙组合

消防给水系统控制&#xff0c;西门子S7-200&#xff0c;昆仑通态触摸屏YH25 1.采用西门子S7-200PLC&#xff0c;CPU226EM223数字量模块EM231模拟量模块。 2.昆仑通态MCGS触摸屏及软件&#xff0c;可自行转换新版MCGSPRO程序。 3.两水泵一用二备和二用一备可切换&#xff0c;故障…...

别再傻傻分不清了!用Simulink手把手带你搞懂导纳控制与阻抗控制的本质区别

导纳控制 vs 阻抗控制&#xff1a;从理论到Simulink实战的深度解析 在机器人控制领域&#xff0c;柔性交互是一个永恒的话题。想象一下&#xff0c;当机械臂需要完成精密装配任务时&#xff0c;既要有足够的刚性保证定位精度&#xff0c;又要在意外碰撞时表现出适当的柔顺性——…...

快充、便携、安全兼备,Anker能量盒到底香不香?

随着无线互联网时代的到来&#xff0c;移动设备的续航问题成为人们的新烦恼。无论是频繁出差、旅行&#xff0c;还是移动办公&#xff0c;充电宝几乎已经成为随身必备的装备。 然而&#xff0c;传统充电宝往往存在充电速度慢、体积笨重、功能单一&#xff0c;甚至安全认证不完善…...

2024版idea引入lombok总是报错解决方法

在创建SpringBoot文件时不勾选lombok&#xff0c;然后自己手动导入lombok并指定版本玛德这idea的SpringBoot中导入lombok后我使用Data总是说我的get和set方法有毛病&#xff0c;一怒之下我直接就是疯狂搜如何解决lombok引用问题&#xff0c;结果不是让我去勾选一个东西就是让我…...

OpenClaw对比测试:Qwen3.5-9B与其他模型在自动化任务中的表现

OpenClaw对比测试&#xff1a;Qwen3.5-9B与其他模型在自动化任务中的表现 1. 测试背景与实验设计 最近在搭建个人自动化工作流时&#xff0c;我遇到了一个关键问题&#xff1a;OpenClaw框架下究竟该选择哪个大模型作为决策核心&#xff1f;为了找到答案&#xff0c;我花了三天…...

HertzBeat自定义监控模板开发终极指南:打造专属监控能力 [特殊字符]

HertzBeat自定义监控模板开发终极指南&#xff1a;打造专属监控能力 &#x1f680; HertzBeat是一款开源、高性能的实时监控系统&#xff0c;支持自定义监控、无代理部署和类Prometheus架构。本指南将带你从零开始掌握HertzBeat自定义监控模板开发的核心技能&#xff0c;快速构…...

TVM构建系统详解:CMake与Makefile配置最佳实践

TVM构建系统详解&#xff1a;CMake与Makefile配置最佳实践 引言&#xff1a;TVM构建系统的核心挑战 深度学习编译器TVM&#xff08;Tensor Virtual Machine&#xff09;作为一个跨平台、多后端的开源项目&#xff0c;其构建系统面临着独特的复杂性。开发者需要在不同架构&#…...

对抗攻击新思路:为什么Diffusion模型比GAN更适合生成隐蔽攻击样本?

扩散模型在对抗攻击领域的突破性优势&#xff1a;从理论到实践 当我们在讨论机器学习安全时&#xff0c;对抗攻击一直是个令人着迷又充满挑战的话题。想象一下&#xff0c;只需对输入图像做几乎不可察觉的微小改动&#xff0c;就能让最先进的分类模型完全"失明"——这…...

HelloWorld.h:嵌入式LED硬件抽象库设计与实战

1. 项目概述led是一个极简但高度工程化的嵌入式LED控制抽象库&#xff0c;其核心载体为单头文件HelloWorld.h。尽管项目名称朴素、文档极度精简&#xff08;Readme为空&#xff09;&#xff0c;但该命名本身即构成一种嵌入式开发领域的隐喻性宣言——它并非教学示例的代名词&am…...

Docker+iredmail搭建企业级邮件服务器全流程(附常见问题排查)

Dockeriredmail搭建企业级邮件服务器全流程指南 邮件系统作为企业日常沟通的核心基础设施&#xff0c;其稳定性和安全性直接影响业务运转效率。传统邮件服务器部署往往需要复杂的配置和漫长的调试周期&#xff0c;而Docker容器化技术结合iredmail开源邮件解决方案&#xff0c;为…...

TVM终极模型剪枝指南:如何快速实现结构化与非结构化剪枝

TVM终极模型剪枝指南&#xff1a;如何快速实现结构化与非结构化剪枝 想要让深度学习模型跑得更快、占用更少内存&#xff1f;TVM的模型剪枝功能就是你的最佳选择&#xff01;&#x1f680; 本文为你带来TVM剪枝的完整指南&#xff0c;从基础概念到实际应用&#xff0c;让你快速…...

终极指南:Autoenv如何彻底解决团队开发环境配置难题

终极指南&#xff1a;Autoenv如何彻底解决团队开发环境配置难题 【免费下载链接】autoenv 项目地址: https://gitcode.com/gh_mirrors/aut/autoenv Autoenv是一款强大的目录环境管理工具&#xff0c;能够在您进入包含.env文件的目录时自动执行其中的环境配置&#xff0…...

从零搭建企业级开源大模型平台:Ollama+Llama3+open-webui实战指南

1. 为什么选择OllamaLlama3open-webui组合&#xff1f; 最近两年大语言模型的发展速度简直让人瞠目结舌&#xff0c;从最初的GPT-3到现在的Llama3&#xff0c;模型能力突飞猛进的同时&#xff0c;部署门槛也在不断降低。作为一个在AI领域摸爬滚打多年的老手&#xff0c;我实测过…...

终极指南:从NumPy到Pydantic的Claude-Code-Usage-Monitor依赖管理完整解析

终极指南&#xff1a;从NumPy到Pydantic的Claude-Code-Usage-Monitor依赖管理完整解析 【免费下载链接】Claude-Code-Usage-Monitor Real-time Claude Code usage monitor with predictions and warnings 项目地址: https://gitcode.com/gh_mirrors/cl/Claude-Code-Usage-Mon…...

说说你对spring的IOC的理解

面试 IOC指的就是控制反转&#xff0c;指的就是创建对象的控制权的转移&#xff0c;简单来说&#xff0c;由之前的手动new对象&#xff0c;转换成了由spring自动生产&#xff0c;spring利用java的反射机制&#xff0c;根据配置文件或注解在运行时动态创建并管理对象。...