Python实现从PPT中导出高分辨率图片
作者:小锋学长生活大爆炸 发布时间:2023-01-03 16:29:08
标签:Python,PPT,图片
总结为:改注册表。
顺手写个脚本:
import tkinter as tk
from tkinter import ttk
import winreg
from tkinter import messagebox
class App(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.pack()
self.version_maps = {
"Microsoft 365 ": "16.0",
"PowerPoint 2019": "16.0",
"PowerPoint 2016": "16.0",
"PowerPoint 2013": "15.0",
"PowerPoint 2010": "14.0",
"PowerPoint 2007": "12.0",
"PowerPoint 2003": "11.0",
}
self.center_window()
self.create_widgets()
def center_window(self):
width = 250
height = 200
screen_width = self.master.winfo_screenwidth()
screen_height = self.master.winfo_screenheight()
x = (screen_width - width) // 2
y = (screen_height - height) // 2
self.master.geometry(f"{width}x{height}+{x}+{y}")
self.master.title("PPT改DPI")
def create_widgets(self):
self.version_label = tk.Label(self, text="选择Office版本:")
self.version_label.pack()
self.version_var = tk.StringVar(self)
self.version_var.set(list(self.version_maps.keys())[0])
self.version_combobox = ttk.Combobox(
self,
textvariable=self.version_var,
values=list(self.version_maps.keys()),
state="readonly"
)
self.version_combobox.pack()
self.value_label = tk.Label(self, text="输入要修改的值:")
self.value_label.pack(pady=5)
self.value_entry = tk.Entry(self)
self.value_entry.insert(0, "96")
self.value_entry.pack(pady=5)
self.process_button = tk.Button(self, text="执行修改", command=self.process, width=15)
self.process_button.pack(pady=5)
self.quit_button = tk.Button(self, text="退出", command=self.master.destroy, width=15)
self.quit_button.pack(pady=5)
def process(self):
version = self.version_maps.get(self.version_var.get())
input_value = int(self.value_entry.get())
# 定义注册表路径和项名
reg_path = fr"Software\Microsoft\Office\{version}\PowerPoint\Options"
reg_key = "ExportBitmapResolution"
try:
# 打开注册表项
key = winreg.OpenKey(winreg.HKEY_CURRENT_USER, reg_path, 0, winreg.KEY_ALL_ACCESS)
except:
messagebox.showerror("错误", f"注册表项不存在,请检查: {reg_path}")
return
try:
# 尝试获取项的值
value, reg_type = winreg.QueryValueEx(key, reg_key)
if reg_type == winreg.REG_DWORD:
# 如果项存在且类型为DWORD32,修改它的值
winreg.SetValueEx(key, reg_key, 0, winreg.REG_DWORD, input_value)
else:
messagebox.showerror("失败", "注册表项类型不符合要求")
except FileNotFoundError:
# 如果项不存在,创建它并设置为DWORD32类型
winreg.SetValueEx(key, reg_key, 0, winreg.REG_DWORD, input_value)
# 修改它的值
winreg.SetValueEx(key, reg_key, 0, winreg.REG_DWORD, input_value)
messagebox.showinfo("成功 ", "修改后的值 =>" + str(winreg.QueryValueEx(key, reg_key)[0]))
# 关闭注册表项
winreg.CloseKey(key)
root = tk.Tk()
app = App(master=root)
app.mainloop()
效果图
来源:https://blog.csdn.net/sxf1061700625/article/details/130557903


猜你喜欢
- 优化前后新老代码如下:from git_tools.git_tool import get_collect_projects, QQNews
- 最近发现一常见的加载进度条(loadding)的问题,所以试试,觉得还不错,大家可以看下.当然这个只是一个效果而已!呵呵,用的着的时候,你就
- 在 golang 语言中,实现io的读与写,只要实现了如下的读写接口即可:// go 1.19/src/io/io.go
- 一. 官网下载MySQL官方网址:(https://www.mysql.com/) 或者点击这里下载:https://www.jb
- vue做移动端经常碰到弹窗的需求, 这里写一个功能简单的vue弹窗popup.vue<template> <div cla
- 一、案例分析我们先思考一下,实现扫码工具需要写什么操作。在扫码过程中我们需要打开摄像头,如何由手机或者电脑识别二维码。所以我们要实现两个关键
- 本文实例讲述了Python编程实现双链表,栈,队列及二叉树的方法。分享给大家供大家参考,具体如下:1.双链表class Node(objec
- 本文实例为大家分享了JavaScript实现简易轮播图效果的具体代码,供大家参考,具体内容如下全部代码:<!DOCTYPE html&
- 最近在对接微信公众号、微信支付等功能,发现很多都是用xml格式的。在使用django日常处理的时候,都是手动拼接的,真的是很恶心。今天仔细的
- 在收发快递填写地址的时候,我们会经常手动输入地址让程序智能识别,标准的地址比如,xx省xx市xx县/区xx路xx号,不过有时候也可以简单写:
- 下面我们自己在 Linux 下做一个动态库(.so 文件 - Shared Object),然在用 Go 来使用它。本文所用的操作系统为 U
- 因为前端课要交一个大作业,刚好工作室的项目需要一个后台管理界面,就自学了一下vue,今天做了一个选项卡切换,最开始的作为菜鸡是用的js做的,
- 1.新建site-packages目录,进入到site-packages目录下;2.在site-packages目录下执行pip freez
- 1. 在游戏循环中监听事件事件event:就是游戏启动后,用户针对游戏所做的操作例如:点击关闭按钮,点击鼠标,按下键盘监听:在游戏循环中,判
- itertools.product:类似于求多个可迭代对象的笛卡尔积。使用的形式是:itertools.product(*iterables
- 在定义类的过程中,无论是显式创建类的构造方法,还是向类中添加实例方法,都要求将 self 参数作为方法的第一个参数。例如,定义一个 Pers
- 用vue写业务代码时候,后端大神丢给我一堆数据,要求是做全选,反选功能,然后把用户更改的数据全部返回给他基本思路如果父级选中了,那么父级下面
- 在做开发的朋友特别是和mysql有接触的朋友会碰到有时mysql查询很慢,当然我指的是大数据量百万千万级了,不是几十条了,下面我们来看看解决
- 1.在查询分析器理启动或停止SQL Agent服务 启动 use master go xp_cmdshell
- 本文实例讲述了Python编程之多态用法。分享给大家供大家参考。具体分析如下:什么是多态?顾名思义,多态就是多种表现形态的意思。它是一种机制