v0.0
使用pygments+Tkinter,本来想打开软件后,将代码粘到左边,然后点一下按钮,右边就出来格式,但最后使用的html的格式,我找了一下午也没找到tkinter怎么内嵌一个html,所以就直接打开一个网页吧,然后在全选粘贴到word里。
v0.1
修改了一下,从gui从Tkinter换成PyQt5,可以更方便的显示html
现在不太好用,先拿这个顶着
在需要格式化的代码的文件夹下,打开cmd,键入
pygmentize -O full,style=friendly -o test.html test.py
然后再去html里复制出来
在word中粘贴代码时,经常无法像多数IDE那样带着格式显示,本文利用pygments+PyQt5将代码带格式显示出来,达到以下的效果
待改进的地方:
1,有行号的时候,第一行总对不齐。而且最后一行会多出来一行?????
2, 目前就只加了C和Python,别的语言我也不会...
3, 在word里粘贴的时候,要注意下粘贴的格式。
先这样,
代码如下,直接编译就好
# -*- coding: utf-8 -*-
import sys
from PyQt5 import QtWidgets, QtCore
from PyQt5.QtGui import QIcon
from PyQt5.QtCore import QRect, QCoreApplication
from PyQt5.QtWebEngineWidgets import QWebEngineView
from pygments import highlight
from pygments.lexers import get_lexer_by_name
from pygments.formatters import HtmlFormatter
from pygments.styles import STYLE_MAP
# import pyperclip
def transfer(code, lineno=False, style='friendly',ulexer='C',):
# 准备好格式
lexer = get_lexer_by_name(ulexer)
# print(lexer)
css = HtmlFormatter(style=style).get_style_d