我通过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-07-30-05_b9977ed08f1366ee34e791396664fbe7)
Tin语言标记文本段可以通过TinEngine中的TinText渲染成可读的富文本。Tin标记语言可以实现以下功能。
渲染普通富文本(<title>,<main>,<middles>等)、链接(<word>)、图片(<img>,支持gif)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=0115c87ec02a60595210e1121835342d/516c701c8701a18bd7cc36f8892f07082938fe9f.jpg?tbpicau=2024-07-30-05_73c8ce32a813ff8fbfb8d9ea85a6cb50)
HTML4(<hptext>,图为HTML3渲染,新版的Tin支持HTML4渲染)和HTML5(<html>)的渲染
![](http://tiebapic.baidu.com/forum/w%3D580/sign=693758d31e23dd542173a760e108b3df/214a71119313b07e68a474bf1bd7912396dd8ca1.jpg?tbpicau=2024-07-30-05_7be8ac814bb90f70f7e27a0494ee8c2d)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=792da2598b82d158bb8259b9b00b19d5/d66f522397dda14405104805a5b7d0a20df486a1.jpg?tbpicau=2024-07-30-05_533b376cb55faf947393864d53c55ad1)
渲染表格等内部组件(图为第一代表格,最新一代渲染的表格自动适配宽度和滚动尺寸)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=36c681d58f22720e7bcee2f24bca0a3a/1544dd178a82b90175a1e784648da9773812efb6.jpg?tbpicau=2024-07-30-05_441fdf0ce2cb7df7a0a1aad8629e2ec7)
内嵌代码段(<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-07-30-05_aca406ada2390bcc8776e71a451c7749)
加密文本段内容,通过内部对话框获取密码(此外还有一些交互功能如<askyesno>和<stop>标签)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=28f6a330c7a20cf44690fed746084b0c/fc2f9aee3d6d55fbc38f52917a224f4a21a4dd71.jpg?tbpicau=2024-07-30-05_f7962f6619180fc195d75e1eccc9e837)
此外,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-07-30-05_b9977ed08f1366ee34e791396664fbe7)
Tin语言标记文本段可以通过TinEngine中的TinText渲染成可读的富文本。Tin标记语言可以实现以下功能。
渲染普通富文本(<title>,<main>,<middles>等)、链接(<word>)、图片(<img>,支持gif)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=0115c87ec02a60595210e1121835342d/516c701c8701a18bd7cc36f8892f07082938fe9f.jpg?tbpicau=2024-07-30-05_73c8ce32a813ff8fbfb8d9ea85a6cb50)
HTML4(<hptext>,图为HTML3渲染,新版的Tin支持HTML4渲染)和HTML5(<html>)的渲染
![](http://tiebapic.baidu.com/forum/w%3D580/sign=693758d31e23dd542173a760e108b3df/214a71119313b07e68a474bf1bd7912396dd8ca1.jpg?tbpicau=2024-07-30-05_7be8ac814bb90f70f7e27a0494ee8c2d)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=792da2598b82d158bb8259b9b00b19d5/d66f522397dda14405104805a5b7d0a20df486a1.jpg?tbpicau=2024-07-30-05_533b376cb55faf947393864d53c55ad1)
渲染表格等内部组件(图为第一代表格,最新一代渲染的表格自动适配宽度和滚动尺寸)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=36c681d58f22720e7bcee2f24bca0a3a/1544dd178a82b90175a1e784648da9773812efb6.jpg?tbpicau=2024-07-30-05_441fdf0ce2cb7df7a0a1aad8629e2ec7)
内嵌代码段(<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-07-30-05_aca406ada2390bcc8776e71a451c7749)
加密文本段内容,通过内部对话框获取密码(此外还有一些交互功能如<askyesno>和<stop>标签)
![](http://tiebapic.baidu.com/forum/w%3D580/sign=28f6a330c7a20cf44690fed746084b0c/fc2f9aee3d6d55fbc38f52917a224f4a21a4dd71.jpg?tbpicau=2024-07-30-05_f7962f6619180fc195d75e1eccc9e837)
此外,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的完善,欢迎大家讨论。(新高一生,如有疏忽,请谅解)