其他分享
首页 > 其他分享> > 批量修改Markdown中的图片使之居中且大小为80%

批量修改Markdown中的图片使之居中且大小为80%

作者:互联网

用于改变Markdown格式的图片使之居中并将图片大小设置为80%

GitHub:https://github.com/liuhao326/pythontools/blob/master/MClipChange.py

源代码:

 1 import re
 2 import time
 3 import pyperclip
 4 
 5 # 写这个的原因:
 6 # 用Makdown做完笔记之后有大量插入的图片为如下格式
 7 # <center><img src="https://..." alt="图5.18 AB+AB的逻辑电路组成" style="zoom:25%;" /></center>
 8 # 现想要如下将其中的style="zoom:25%;"修改为style="zoom:80%;",并将<center></center>的格式改为<div align=center></div>
 9 # <div align=center><img src="https://..." alt="图5.18 AB+AB的逻辑电路组成" style="zoom:80%;" />
10 # 因为大量图片都需要作此修改,故写下这个程序
11 
12 # 使用:
13 # 使用时只需要先复制(Ctrl + C)原来图片的Markdown内容,程序就会将剪切板内容修改为想要的Markdown格式,直接粘贴即可
14 # 在Markdown文本中选中下面内容:
15 # <center><img src="https://..." alt="图5.18 AB+AB的逻辑电路组成" style="zoom:25%;" /></center>
16 # Ctrl + C复制
17 # Ctrl + V粘贴
18 # 得到<div align=center><img src="https://..." alt="图5.18 AB+AB的逻辑电路组成" style="zoom:80%;" />
19 
20 # 思路:
21 # 先从剪切板获取整个字符串
22 # 再获取字符串中间部分的有效内容
23 # 然后将获取的中间部分的style部分修改为style = "80%"
24 # 最后添加使之居中的HTML语法
25 # 将最后得到的字符串复制到剪切板
26 
27 # 获取剪切板内容
28 last_string = pyperclip.paste()
29 
30 while True:
31     # 检查频率
32     time.sleep(0.2)
33     # 每循环一次获得剪切板上的内容
34     string = pyperclip.paste()
35     # 如果剪切板上的内容发生了变化(与剪切板上的原内容不一致)
36     if string != last_string and string != '':
37         # 获取剪切板中的前部分有效内容
38         temp_list1 = re.findall(r"<img[\s\S]*zoom:",string)
39         # 获取剪切板中的后部分有效内容
40         temp_list2 = re.findall(r";\" />",string)
41         # 如果有效部分获取成功
42         if temp_list1 and temp_list2:
43             # 在有效部分前后添加使之居中的HTML语法并赋值给temp_string
44             temp_string = "<div align=center>" + temp_list1[0] +"80%" + temp_list2[0] + "</div>"
45             pyperclip.copy(temp_string)
46             string = pyperclip.paste()
47             print(temp_string)
48         else:
49             print("not match")
50         # 每一次剪切板有变化都将last_string设置成剪切板上的新内容
51         last_string = string

 

 

 

标签:居中,Markdown,string,temp,pyperclip,80%,剪切板
来源: https://www.cnblogs.com/Higurashi-kagome/p/12497640.html