在 Linux 终端显示动画式 ASCII 生日祝福
通过在 Linux 终端创建 ASCII 生日动画,让你所爱的人的特殊日子更加特别。
生日是特殊的日子,从亲朋好友那里收到生日祝福是非常令人满足和愉悦的。
作为 Linux 用户,你可以通过终端给朋友和家人带来一些酷炫的生日祝福。
这是我为 Abhishek 先生的生日制作的生日卡片(或者说动画)。
我们团队的每个人都非常喜欢它,所以我受到请求要按照它做一个教程。我很乐意满足请求,因为这可能对我们的读者有所帮助 ?
✋ 这个教程需要在终端中编辑配置文件。熟练使用 Linux 终端和命令会更容易理解和跟随本教程。
安装 PyBirthdayWish
PyBirthdayWish 是一个小型的 Python 程序,通过它你可以创建漂亮的终端生日祝福,还可以播放音乐!
这个程序本身在 Ubuntu 的默认软件仓库中不可用,你需要使用 Pip 进行安装。
首先,使用以下命令在 Ubuntu 中 安装 Pip:
1 |
|
安装完 Pip 后,你可以克隆该存储库并安装该程序:
1 |
|
在他们的存储库中,你可以查看 .requirements.txt
文件,了解上述命令中所需的依赖项。
安装完成后,在你克隆的 PyBirthdayWish
目录中运行以下命令:
1 |
|
这将要求你按下 F11
键,然后按回车键进入全屏模式,然后播放动画。
这里还有音乐,但这里没有展示。
它非常可定制化。让我展示一下你可以通过这个工具进行的各种级别的可选定制。
创建默认的生日祝福动画
在上述程序中,有三个用于动画的 Python 文件。它们是 example
(默认)、art
和 artwithstars
。你可以打开这三个文件来了解其内容。
现在,如果你想使用 artwithstars
文件代替默认的 example
文件,在 任何可用的文本编辑器 中打开 config.py
,将 arts
的条目替换为所需的名称,然后保存,如下面的截图所示:
之后,在 PyBirthdayWish
目录中运行:
1 |
|
你将得到新的动画效果。
创建自定义的生日祝福
如果你想打印你所爱的人的名字,而不是默认的文字,这需要一点耐心,因为你需要在不破坏原文件的情况下编辑 art 文件。
首先,备份你想要的设计 art 文件。即在同一个 arts
目录中将文件复制一份,并给它一个不同的名称,比如 friend.py
。
现在,用你选择的文本编辑器打开设计 art 文件。将文件中的文字替换为你需要的内容。最好使用符号 | _ \ /
等来创建文本和设计。你可以使用一个 在线工具将文字转换为 ASCII 艺术。
? 输入一个字符将使动画的其余部分向前移动一个字符。同样,删除一个字符会使设计的其余部分向后移动一个字符。因此,如果删除一个字符,请添加一个空格。同样地,如果在某一行上添加了一个新字符,请删除一个空格。这应该实时进行,这样你就可以查看更改。这样,你就可以使剩余的设计匹配,并在完成时保持外观不变。
编辑完成后保存文件。现在,打开 config.py
并将 art 文件更改为你的文件,以显示你所做的更改。
现在你可以运行程序,以获得你所需的文字出现在动画中:
1 |
|
使用自己的音乐文件
你可以使用自己的音乐文件作为这个动画的一部分。
? 如果你计划在 YouTube 或其他网站上上传视频,请使用无版权的音乐以避免问题。
将你的音乐文件复制到克隆的目录中。
编辑 config.py
文件以添加新的音乐,如下面的截图所示:
完成!现在,如果执行运行命令 python3 PyBirthdayWish.py
,自定义音乐将与动画一起播放。
创建一个可执行文件
如果你想将上述祝福消息作为可执行文件发送给朋友,这也是可行的。
关联的 pyinstaller
将安装到 .local/bin
目录中,它不在你的路径中。
所以使用以下命令将该目录添加到你的路径中,添加到你的路径中:
1 |
|
要使其永久生效,将其添加到你的 ~/.bashrc
文件中。
当你完成 art 文件的编辑并更改配置文件以反映更改后,使用以下命令创建一个可执行文件:
1 |
|
它将在 PyBirthdayWish/dist
目录下创建一个名为 PyBirthdayWish
的可执行文件。
将此可执行文件复制并发送给任何想查看它的人。他们可以使用以下命令执行它:
1 |
|
? 请始终谨慎运行来自未知外部来源的可执行文件。
更多终端乐趣
像生日一样,圣诞节也是一个特殊的时刻。如果你愿意,你可以给你的 Linux 桌面增添一些节日气氛。
如果你喜欢 ASCII 动画,你可能也会喜欢 ASCII 艺术。
为什么就止步于此呢?探索更多 ASCII 工具吧。
享受以这种有趣的方式使用 Linux ?
? 如果你在使用这个工具时遇到任何问题,请告诉我,我会尽力在我所能的范围内提供帮助。
(题图:MJ/dfa0185d-e9f9-4c1a-886e-e42c9bb8d687)
via: https://itsfoss.com/birthday-wish-linux-terminal/