我通过tkinter实现了富文本标记语言——Tin语言。这是我定义的一个可以通过TinEngine在tkinter中解析渲染的标记语言。Tin标记语言采用标签语法(不是HTML的元素语法,所以不支持嵌套)。
TinEngine的知识库地址(https://tinhome.baklib-free.com/)
TinEngine使用pip安装:pip install tinengine
![](http://tiebapic.baidu.com/forum/w%3D580/sign=21304de723a85edffa8cfe2b795409d8/33e8f62ac65c1038ce42ea75a5119313b17e8986.jpg?tbpicau=2024-09-12-05_75c8a8cc1dd9f3e4c06d28d505013ef6)
Tin语言标记文本段可以通过TinEngine中的TinText渲染成可读的富文本。Tin标记语言可以实现以下功能。
渲染普通富文本(<title>,<main>,<middles>等)、链接(<word>)、图片(<img>,支持gif)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=0115c87ec02a60595210e1121835342d/516c701c8701a18bd7cc36f8892f07082938fe9f.jpg?tbpicau=2024-09-12-05_da83d6ae7f42152fb086fdf06c43962a)
HTML4(<hptext>,图为HTML3渲染,新版的Tin支持HTML4渲染)和HTML5(<html>)的渲染
![](http://tiebapic.baidu.com/forum/w%3D580/sign=693758d31e23dd542173a760e108b3df/214a71119313b07e68a474bf1bd7912396dd8ca1.jpg?tbpicau=2024-09-12-05_f5f1effea3ebbe89348003536ebcee9e)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=792da2598b82d158bb8259b9b00b19d5/d66f522397dda14405104805a5b7d0a20df486a1.jpg?tbpicau=2024-09-12-05_8c81e8521272463d2910e44aa2c88bf2)
渲染表格等内部组件(图为第一代表格,最新一代渲染的表格自动适配宽度和滚动尺寸)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=36c681d58f22720e7bcee2f24bca0a3a/1544dd178a82b90175a1e784648da9773812efb6.jpg?tbpicau=2024-09-12-05_a543286b0662c8c1e1a9cd5e128a892b)
内嵌代码段(<code>支持Python,tcl,vbs)(图为通过Python代码绑定按钮事件)
<tkinter>
window_create(self.end,window=Button(self,text='code button',command=lambda:self.get_codes_to_run('test')))
</tkinter>
<code>test;python
self.insert('end','main')
</code>
![](http://tiebapic.baidu.com/forum/w%3D580/sign=5714d7db073853438ccf8729a312b01f/a14cc9d162d9f2d335120058beec8a136227ccbb.jpg?tbpicau=2024-09-12-05_d838f8252bc0623b799cf5a47f1326c3)
加密文本段内容,通过内部对话框获取密码(此外还有一些交互功能如<askyesno>和<stop>标签)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=28f6a330c7a20cf44690fed746084b0c/fc2f9aee3d6d55fbc38f52917a224f4a21a4dd71.jpg?tbpicau=2024-09-12-05_6d0e9b0b04973cde82f1be8e3baca733)
此外,Tin还能实现很多渲染功能,而且Tin尚处于完善阶段。
Tin能够在以下场景使用
1. 渲染富文本或进行富文本呈现/阅读
2. 将界面内容/数据以富文本样式展现出来
3. 在tkinter上实现类似于HTMLlayout的TinLayout
TinEngine支持库:
PIL, requests, comtypes
可以直接在知识库https://tinhome.baklib-free.com/获取Tin编写应用——TinReader(Windows)
在知识库的“预览与接口”中可以下载最新的TinEngine.pyd(windows10_x64,Python3.9)
或者可以使用pip安装:pip install tinengine
因为目前Tin标记语言还不完善等原因,目前只能提供pyd接口,希望大家理解
。
关于TinEngine的完善,欢迎大家讨论。(新高一生,如有疏忽,请谅解)
TinEngine的知识库地址(https://tinhome.baklib-free.com/)
TinEngine使用pip安装:pip install tinengine
![](http://tiebapic.baidu.com/forum/w%3D580/sign=21304de723a85edffa8cfe2b795409d8/33e8f62ac65c1038ce42ea75a5119313b17e8986.jpg?tbpicau=2024-09-12-05_75c8a8cc1dd9f3e4c06d28d505013ef6)
Tin语言标记文本段可以通过TinEngine中的TinText渲染成可读的富文本。Tin标记语言可以实现以下功能。
渲染普通富文本(<title>,<main>,<middles>等)、链接(<word>)、图片(<img>,支持gif)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=0115c87ec02a60595210e1121835342d/516c701c8701a18bd7cc36f8892f07082938fe9f.jpg?tbpicau=2024-09-12-05_da83d6ae7f42152fb086fdf06c43962a)
HTML4(<hptext>,图为HTML3渲染,新版的Tin支持HTML4渲染)和HTML5(<html>)的渲染
![](http://tiebapic.baidu.com/forum/w%3D580/sign=693758d31e23dd542173a760e108b3df/214a71119313b07e68a474bf1bd7912396dd8ca1.jpg?tbpicau=2024-09-12-05_f5f1effea3ebbe89348003536ebcee9e)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=792da2598b82d158bb8259b9b00b19d5/d66f522397dda14405104805a5b7d0a20df486a1.jpg?tbpicau=2024-09-12-05_8c81e8521272463d2910e44aa2c88bf2)
渲染表格等内部组件(图为第一代表格,最新一代渲染的表格自动适配宽度和滚动尺寸)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=36c681d58f22720e7bcee2f24bca0a3a/1544dd178a82b90175a1e784648da9773812efb6.jpg?tbpicau=2024-09-12-05_a543286b0662c8c1e1a9cd5e128a892b)
内嵌代码段(<code>支持Python,tcl,vbs)(图为通过Python代码绑定按钮事件)
<tkinter>
window_create(self.end,window=Button(self,text='code button',command=lambda:self.get_codes_to_run('test')))
</tkinter>
<code>test;python
self.insert('end','main')
</code>
![](http://tiebapic.baidu.com/forum/w%3D580/sign=5714d7db073853438ccf8729a312b01f/a14cc9d162d9f2d335120058beec8a136227ccbb.jpg?tbpicau=2024-09-12-05_d838f8252bc0623b799cf5a47f1326c3)
加密文本段内容,通过内部对话框获取密码(此外还有一些交互功能如<askyesno>和<stop>标签)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=28f6a330c7a20cf44690fed746084b0c/fc2f9aee3d6d55fbc38f52917a224f4a21a4dd71.jpg?tbpicau=2024-09-12-05_6d0e9b0b04973cde82f1be8e3baca733)
此外,Tin还能实现很多渲染功能,而且Tin尚处于完善阶段。
Tin能够在以下场景使用
1. 渲染富文本或进行富文本呈现/阅读
2. 将界面内容/数据以富文本样式展现出来
3. 在tkinter上实现类似于HTMLlayout的TinLayout
TinEngine支持库:
PIL, requests, comtypes
可以直接在知识库https://tinhome.baklib-free.com/获取Tin编写应用——TinReader(Windows)
在知识库的“预览与接口”中可以下载最新的TinEngine.pyd(windows10_x64,Python3.9)
或者可以使用pip安装:pip install tinengine
因为目前Tin标记语言还不完善等原因,目前只能提供pyd接口,希望大家理解
![](https://tb2.bdstatic.com/tb/editor/images/face/i_f01.png?t=20140803)
关于TinEngine的完善,欢迎大家讨论。(新高一生,如有疏忽,请谅解)