Skip to content

Latest commit

 

History

History
195 lines (131 loc) · 3.77 KB

051-820516-字体变大_figlet_终端大字体_艺术字效果.sy.md

File metadata and controls

195 lines (131 loc) · 3.77 KB
show version enable_checker
step
1.0
true

回到开头

回忆 上次内容

  • \r
    • 就是return
      • 回车
      • 源自于turn
      • 和 vers/vert 同源
    • 可以让 输出位置 回到行首
    • 原位 刷新时间
  • 想要 大字符效果
    • 像 下图这样的

图片描述

  • 这 可能 吗?🤔

字体变大

#安装figlet
sudo apt install figlet
#运行figlet
figlet "oeasy"
#利用管道使用figlet
echo "oeasy" | figlet
  • 尝试使用

图片描述

  • 为什么 可以变大 呢?

寻找原理

图片描述

  • figlet 有 专门的 大字体字库
    • 通过映射 将字体变大

打开 字形库

  • 把 具体的ascii字符
    • 映射到 更大的 字符组合上

图片描述

  • 这些 字形库的次序 是如何的 呢?

字形次序

  • 对比 左右组

图片描述

  • 次序 是 按照ascii码表的 次序

管道原理

  • 管道运算符 |
    • 就是 水管子

图片描述

  • 管子 接好了
    • 怎么流 呢?

流动

  • echo "oeasy"的 输出结果
    • 当做 figlet 的输入参数
    • 再 进行 输出

图片描述

  • 这有点亚文化啊 😄

文艺起来

  • 可以写些 关于青春、励志、爱情的句子
    • 就更 亚文化 了😄

图片描述

  • figlet有 别的 字体 么?

figlet 字体

  • 控制 字体
    • -f

图片描述

  • 实际 效果

图片描述

  • 还有什么 可以控制的 吗?

位置控制

  • 控制 左中右
    • -r、-c、-l

图片描述

  • 字体大致了解了
    • 报时的时间 从哪里来呢?

尝试整合

  • 尝试 把sleep.py 整合进来
#!usr/bin/python3
import time
while True:
    print(time.asctime(),end='\r')
    time.sleep(1)
  • 通过管道 流到 figlet

尝试整合

  • 卡住 不动了
    • 尝试 失败了

图片描述

  • 先把 那个\r去掉
    • 结果 是不行
  • 为什么 会这样 呢?

失败原因

  • 循环 和 延迟
    • 阻碍着
      • 往管道里 送东西
#!/usr/bin/python3
import time
print(time.asctime())
  • 新建一个show_time.py文件
    • 循环和延迟 都去掉
    • 只纯纯 输出时间

最终

图片描述

  • 保存 并退出
  • 在shell里 运行
    • python3 show_time.py
  • 在shell里 输出重定向
    • python3 show_time.py | figlet

输出

  • 输出大时间 是可以
    • 但是 不会刷新
    • 而且 太大了
    • 超过 一行了

图片描述

  • 不过 至少 可以
    • 出现 时间 了

总结

  • \r
    • 可以 让输出位置 回到行首
    • 原位 刷新 时间
  • 如果想要的是 大字符效果
    • 需要使用 figlet
    • 并且把
      • 循环
      • 延迟
      • 都去掉

图片描述

  • 还想要 刷新大时间
    • 这可能吗?🤔
  • 我们下次再说!👋