牛说(cowsay)

回忆上次内容

  • 我们狂飙了一路

    • 从用shell 直接执行 python程序
    • 到用shell 循环执行 python程序
  • 循环体中

    • python的 输出结果

      • 用管道 交给了 figlet
    • figlet的 输出结果

      • 用管道 交给了 cowsay
    • cowsay的 输出结果

      • 用管道 交给了 lolcat
  • 最后

    • 提权 直接运行 shell程序
  • 这一路真的好远啊!

    • python3 是脚本解释器
    • shell 也是脚本解释器
  • 其实我们是

    • 在shell中 利用 python3的 输出结果
    • 用shell 把 python和figlet等程序 粘了起来
    • 不过这一路 真的好绕

      • 要是能在 py文件里 直接调用 shell中的命令 就好了
  • 那个时候

    • python 就成了胶水的主体

      • 完成粘合的工作
    • 也许有一天可以做到
  • 可以自己 diy一个小动物 来报时吗?

ascii_art

  • 这是一门非常年轻的亚文化

编辑

  • 搜索asciiart

    • 有很多有意思的asciiart 可以下载

编辑

  • 能否将图片 转化为asciiart 呢?

准备图片

  • 在本机下载图片

    • 之后上传到蓝桥云

编辑

  • 注意 上传的图片 在Code文件夹中

    • cd Code 可以 进入Code文件夹
  • 最好选择png格式

    • 成功概率会提高

准备环境 aview ️

sudo apt update
sudo apt install aview
sudo apt install imagemagick
  • 下载字符画软件

    • aview
    • imagemagick

编辑

运行程序

编辑

  • 使用 asciiview 可以

    • 将图片 转化为 asciiart
asciiview panda.jpg

存储字符画

  • 通过 查询帮助

    • 发现 字符画可以

      • 保存为文本、网页等形式
  • 在运行

    • asciiview xxx.png之后
    • 出现了 字符画面
    • 注意 图片中的纯黑部分 是以空格形式 来出现的
  • 按下快捷键s

    • 会出现一个菜单
    • 如下图

编辑

  • 然后选择Text格式

    • 选 1
    • 后面再设置路径
    • 一路下一步

保存过程

编辑

  • 到这一步 选8

编辑

  • 然后按y

    • 保存
    • 然后

      • 可以关闭小窗
  • ll 可以看到文件了
  • 字符画可以长什么样子呢?

国画风

编辑

编辑

表情风

编辑

甲骨文风

编辑

编辑

大小选择

编辑

  • 可以设置分辨率为四分之一大小

编辑

线稿风格

编辑

编辑

  • cat 打开 这个xxx.txt

    • 观察效果
  • 可以 把这个小动物 变成

    • cowsay可以用的 小动物吗?

结合 cowsay

  • 先找到位置

编辑

  • 复制小动物文件

复制动物

# 在确认 cowsay 已经安装的情况下
cd /usr/share/cowsay/cows
# 复制一个 cow 文件
sudo cp apt.cow oeasy.cow
#使用编辑器编辑
sudo vi oeasy.cow ~/Code/ooo.txt

编辑

修改字符画

  • 新的动物名 cat 可以用了

    • 图案 还是 原来的字符画

编辑

  • 怎么使用diy的字符画呢?

替换字符画

  • 在合适位置dG

    • 把 原来的字符画 删除
  • :r ~/Code/xxx.txt

    • 粘贴上 自己diy的 小动物字符画

编辑

  • 话语的斜线有点问题

修改

  • 修改文字泡泡线

编辑

  • 注意!

    • 前5行和最后一行
    • 都是有意义的
    • 是cowsay的结构

编辑

  • 是不能丢的东西

不能丢的东西

  • 第1行和最后一行的相关头尾不能丢

    • 还有中间的有些替换字符也要注意
    • 才能保证.cow文件可用

编辑

  • 如果要说的话比较多

    • 就需要角色要变小一点

角色大小选择

编辑

  • 可以设置分辨率为四分之一大小

编辑

配合报时

编辑

  • 使用新动物

编辑

渐变色

编辑

大功告成!

  • 可以再配合一些亚文化的话语

    • 做成报时动画

编辑

  • 将我们diy的好东西

    • 录制成视频
    • 发个动态炫一下
  • 这就是asciiart!!!

总结

[oeasy]python0037_字符画艺术_asciiview_自制小动物_imagick_asciiart的更多相关文章

  1. python小项目(-)图片转字符画

    # -*- coding: utf-8 -*- from PIL import Image codeLib = '''@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrj ...

  2. 用函数式的 Swift 实现图片转字符画的功能

    今天整理 Pocket 中待看的文章,看到这篇<Creating ASCII art in functional Swift>,讲解如何用 Swift 将图片转成 ASCII 字符.具体原 ...

  3. Python 图片转字符画

    Python 图片转字符画 一.课程介绍 1. 课程来源 原创 2. 内容简介 本课程讲述怎样使用 Python 将图片转为字符画 3. 前置课程 Python编程语言 Linux 基础入门(新版) ...

  4. AsciiMorph - 新奇的 ASCII 字符画生成工具&插件

    AsciiMorph 是一个新奇的 ASCII 字符画生成工具和开源插件.字符画(ASCII Art)的历史可以追溯到几十年前,起初是用在图形显示功能受限的设备上,用ASCII字符集里的可打印字符来拼 ...

  5. HTML5将图片转化成字符画

    HTML5将图片转化成字符画 字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢?HTML5让这个可能变成了现实,通过canvas,可以很轻松实现这个功能.其实原理很简单:扫描图片相应位置 ...

  6. Swift 实现图片转字符画的功能

    本文介绍一个IOS APP , 将图片转换成ASCII字符画,使用Swift语言编写. 举个例子,我们使用著名的蕾娜照片作为原图片 经APP转换后形成的字符画,我们打印出来,效果如下: 放大她的脸部可 ...

  7. 基于 canvas 将图片转化成字符画

    字符画大家一定非常熟悉了,那么如何把一张现有的图片转成字符画呢? HTML5 让这个可能变成了现实,通过 canvas,可以很轻松实现这个功能. 其实原理很简单:扫描图片相应位置的像素点,再计算出其灰 ...

  8. 将图片转为ASCII字符画

    原文:将图片转为ASCII字符画 Copyright 2012 Conmajia 源代码下载:点击这里 什么是字符画?就是用ASCII字符来近似组成图像,就像这样: ╭╮ ╭╮ ││ ││ ╭┴┴—— ...

  9. 中国孩子的micro:bit:TurnipBit自制小乐器教程实例

    孩子们是最贪玩的也是最聪明的,因此在过去的数年中,市面上出现了不少寓教于乐的理工科知识(STEM)学习新方法.如今这类产品中又有了一名新成员,TPYBoard重磅推出一款针对小白.中小学生的可编程计算 ...

  10. Python 视频转字符画 - 进阶

    这篇文章是 视频转字符动画-Python-60行代码 的后续,如果感兴趣,请先看看它. 1. 速度优化 要是每次播放都要等个一分钟,也太痛苦了一点. 所以可以用 pickle 模块把 video_ch ...

随机推荐

  1. 如果个人pc上要装不同社区版本的pycharm,安装时需要注意的一点

    pycharm下载地址[包含了目前发行的所有版本]:https://www.jetbrains.com/pycharm/download/other.html 选择指定的版本,点击 勾选uninsta ...

  2. Nginx的正向代理和反向代理

    1.Nginx代理 (1)Nginx出现的早期就是作为一个高性能的http.反向代理的web服务器. (2)同时它也提供了IMAP/POP3/SMTP服务,也就是电子邮件代理服务器. (3)它的特点就 ...

  3. 6.20考试总结(NOIP模拟9)[斐波那契·数颜色·分组]

    一旦你尝试过天空的味道,你就会永远向上仰望 T1 斐波那契 解题思路 题目传送门 \(70pts\)做法 这个做法比较暴力,考场上也是看到范围\(10^{12}\)后知道需要推式子,但是感觉自己太菜了 ...

  4. 剑指Offer-53.表示数值的字符串(C++/Java)

    题目: 请实现一个函数用来判断字符串是否表示数值(包括整数和小数).例如,字符串"+100","5e2","-123","3.14 ...

  5. 使用WinSW把nginx做成windows服务

    1.下载nginx:http://nginx.org/en/download.html 2.下载win sw:https://github.com/winsw/winsw/releases/tag/v ...

  6. vs2019安装使用Python3.9教程

    现在vs2019只支持到Python3.7,如果要使用3.9,需要自己下载Python3.9的包 步骤: 一.在开始菜单中找到Microsoft Store搜索"Python3.9" ...

  7. JavaScript执行模型笔记

    JavaScript执行模型 引言 JavaScript是一个单线程(Single-threaded)异步(Asynchronous)非阻塞(Non-blocking)并发(Concurrent)语言 ...

  8. shiro有哪些组件?

    a.Authentication:身份认证/登录,验证用户是不是拥有相应的身份: b.Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限:即判断用户是否能做事情,常见的 ...

  9. mysql ON DUPLICATE KEY UPDATE 演示

    <e>查询:INSERT INTO member_test(mem_no,flag)VALUE('111','1') 错误代码: 1062Duplicate entry '111' for ...

  10. Unity 利用Cache实现边下边玩

    现在手机游戏的常规更新方案都是在启动时下载所有资源更新,游戏质量高的.用户粘性大的有底气,先安装2个G,启动再更新2个G,文件小了玩家还觉得品质不行不想玩. 最近在做微信.抖音小游戏,使用他们提供的资 ...