解决jestonNano使用Tkinter写界面,字体比较模糊的情况

文章讲述了在JestonNano设备上使用Tkinter开发界面时遇到字体模糊的问题,以及因libtk版本不兼容导致的错误。作者提供了修改虚拟环境中libtk8.6.so的软链接和注释Tk.tcl中特定行的解决方案,从而解决了字体显示和版本冲突的难题。
摘要由CSDN通过智能技术生成

参考链接
最近在jestonNano上写相应的界面,发现界面上的字体比较模糊

原因

Tkinter在windows下字体能够很地显示,但在linux下,则出现字体发虚问题,且大量字体没有办法显示。主要是Tkinter链接到Tk/Tcl解释器,其图形库是libtk6.0.so。tkinter不能使用的字体,是由Freetype库管理的,而Anaconda的libtk6.0.so并不是针对Freetype构建的。

命令集

test:虚拟环境的名字
nvidia:jeston系统的用户名字
自己进行替换

# 在这之前需要将虚拟环境本来存在的libtk8.6.so
mv /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so.sav
# 建立软链接
ln -s /usr/lib/aarch64-linux-gnu/libtk8.6.so /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so
vim /home/nvidia/archiconda3/envs/test/lib/tk8.6/tk.tcl
# 大致在14行
# 找到这一句package require -exact Tk  8.6.12注释掉

简单记录

将jestonNano /usr/lib/aarch64-linux-gnu/libtk8.6.so链接到自己创建的虚拟环境的lib目录下
接下来以我自己的虚拟环境为例子(使用的是Archiconda3构建的虚拟环境,代码中的test为我虚拟环境的名字)

# 在这之前需要将虚拟环境本来存在的libtk8.6.so
mv /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so.sav
# 建立软链接
ln -s /usr/lib/aarch64-linux-gnu/libtk8.6.so /home/nvidia/archiconda3/envs/test/lib/libtk8.6.so

这样改完会报出一个错误

由于不好粘贴大致叙述一下
version conflict 8.6.8 need exactly 8.6.12
while executing
“package require -exact TK 8.6.12”
大致内容是这些

#再次进入虚拟环境的目录

vim /home/nvidia/archiconda3/envs/test/lib/tk8.6/tk.tcl
# 大致在14行
# 找到这一句package require -exact Tk  8.6.12注释掉

这样就不在模糊

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值