用python 控制台打印图片示例
功能:利用 python 的 image模块和简单用符号,再控制台打印出图片的图片轮廓
PIL 安装 pip install Pillow
步骤:
1、拿到图片对象,并转换图片模式(‘’L‘’),L模式可以去到图片的个像素的灰度参数;
2、定义图片缩放长度、替换字符的串(根据灰度值排序);
3、遍历缩放后每一个点位置,并获取该点位置的灰度值,根据灰度值替换为相应的替换字符;
4、打印在控制台;
代码如下:
#-*- coding:utf-8 -*-
from PIL import Image
import sys
import osdef _main():try:pic = os.path.abspath(sys.argv[1]) #获取图片路径参数except:print('指定图片路径')img = Image.open(pic) #获取图片对象width = img.width #获取图片宽度height = img.height #获取图片高度gray_img = img.convert('L') #图片转换为'L'模式 模式“L”为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度scale = width // 100 #图片缩放100长度char_lst = ' .:-=+*#%@' #要替换的字符char_len = len(char_lst) #替换字符的长度for y in range(0, height, scale): #根据缩放长度 遍历高度for x in range(0, width, scale): #根据缩放长度 遍历宽度choice =gray_img.getpixel((x, y)) * char_len // 255 #获取每个点的灰度 根据不同的灰度填写相应的 替换字符if choice==char_len:choice=char_len-1sys.stdout.write(char_lst[choice]) #写入控制台sys.stdout.write('\n')sys.stdout.flush()if __name__ == '__main__':_main()
使用:
将上面代码写入到picture.py中,执行命令:python picture.py ImgURL
效果如下:
用python 控制台打印图片示例相关推荐
- python控制台打印文字logo
python控制台打印logo 复制logo 打印文件内容到控制台 复制logo 在ASCIL和taag上搜索你想生成的艺术文字,然后复制到文件.比如mylog.log文件中. 打印文件内容到控制台 ...
- 微信小程序连接蓝牙打印机打印图片示例
微信小程序连接蓝牙打印机示例 完整的代码示例请点击看github 小程序连接蓝牙打印机打印文本与二维码等示例在 github 上都能找到一些,唯独打印图片这个案例几乎没有.希望能帮助到有打印图片需求的 ...
- python打印机打印图片_python连接打印机实现打印文档、图片、pdf文件等功能
引言 python连接打印机进行打印,可能根据需求的不同,使用不同的函数模块. 如果你只是简单的想打印文档,比如office文档,你可以使用ShellExecute方法,对于微软office的文档.p ...
- python怎么打印图片_Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头...
一. 打印图片属性.设置图片存储路径 代码如下: #打印图片的属性.保存图片位置 import cv2 as cv import numpy as np #numpy是一个开源的python科学计算库 ...
- JavaScript控制台打印图片/超链接
打印图片: 代码实现: //打印一张图片 console.log(`%c `,`margin:8px;font-size:80px;background:url(https://6368-chengq ...
- python怎么打印图片_Python如何使用字符打印照片
这篇文章主要介绍了Python如何使用字符打印照片,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 前言 第一次在学校机房里见到计算机,还是上古 ...
- python怎么打印图片_Python:使用字符打印照片
最早的显示器是单色的,只能显示文本,每行最多显示80个字符.想看图片只能用针式打印机打印在两侧穿孔的宽行打印纸上,每个像素用一个字符表示,不同的字符代表不同的灰度,就像下图这个样子. 有没有感觉到浓郁 ...
- python打印机打印图片_Python综合应用:教你用字符打印一张怀旧风格的照片
1. 前言 第一次在学校机房里见到计算机,还是上古时期.计算机型号大概是LASER-310吧,有点记不清了.那会儿,显示器还是单色的,只能显示文本,每行最多显示80个字符.想看图片,印象中只能用针式打 ...
- java控制台打印图片_java——控制台输入打印图形
1. 打印直角三角形 需求说明:从控制台输入直角三角形的高度(行数).每行*的数目依次为1.3.5.7等 . 实现思路:外层循环控制行数,根据用户输入的行数得到外层循环条件 分析每行打印的内容: 每一 ...
- python怎么打印图片_Python打印图片
原博文 2019-07-01 16:34 − 准备好图片:(我女票) python代码: # by gubin 6.20 from dyy from PIL import Image import s ...
最新文章
- 什么是okr,和kpi的区别在哪里
- Revit二次开发之“使用ElementTransformUtils.MoveElement()移动元素”
- 87.VGA 88.FPGA
- 正则表达式下——相关方法
- js获取checkbox多选表单
- 19. Python 类的重写 类的私有变量和私有方法
- Pytorch——DataLoader(批训练)
- 位图(bitmap)—— C语言实现
- Wireshark 文件分割和合并
- jspstudy启动mysql失败_解决Mysql5.7.17在windows下安装启动时提示不成功问题
- 红军协同对抗蓝军问题
- android 8.1 夜间模式,android 快速实现夜间模式
- 解决移动端,wap站,m站适配方案整理
- xiangmu--WAD
- python网络爬虫与信息提取北京理工大学ppt_Python网络爬虫与信息提取
- seajs配置问题详解以及seajs一些插件的使用
- 有关三门问题的答案解释
- 时间序列分析ARMA模型原理及Python statsmodels实践(上)
- 服务器系统linux下载软件,Linux服务器管理系统一键安装包(wdcp Lanmp)
- iOS游戏开发开源库总结
热门文章
- 考计算机证书指南,计算机二级证书:备考和实战指南--教育频道[温州网]
- 在线的棋牌类网络游戏java服务端实现
- 有效提排名!2022 年最全App应用市场优化(ASO)策略
- 大数据scala面试题汇总
- 苹果计算机怎么显示汉字,苹果的safari浏览器怎样设定成中文显示
- 登陆qq邮箱网络未连接到服务器,QQ邮箱无法登陆解决方法图文教程
- HTML---网络编程基础知识(2)
- 机器学习、深度学习、自然语言处理、计算机视觉顶级期刊的论文资料分享(附CVPR2017-2019,ECCV 2018论文下载链接)
- 我的世界超能物质纳米机器人_我的世界超能物质攻略
- ps添加的阴影怎么去除_ps怎么可以把阴影去除