python如何将图片转换为字符图片


Posted in Python onAugust 19, 2020

简介

一个简单的python程序,将图片转换为字符图片。
(为了简便,很多参数写死了,自己看着改吧。 (←∀←))

正文

原图(侵删)

python如何将图片转换为字符图片

结果图

python如何将图片转换为字符图片

源码

[更多细节]——>戳这里

#-*- coding: UTF-8 -*- 
from PIL import Image 
from PIL import ImageDraw 
from PIL import ImageFont
import matplotlib.pyplot as plt
import numpy as np
import time

def happyNewYear(srd_img_file_path, dst_img_file_path = None, scale = 2, sample_step = 3):
 start_time = int(time.time())

 #读取图片信息
 old_img = Image.open(srd_img_file_path)
 pix = old_img.load()
 width = old_img.size[0]
 height = old_img.size[1]
 print ("width:%d, height:%d" % (width, height))

 #创建新图片
 canvas = np.ndarray((height*scale, width*scale, 3), np.uint8)
 canvas[:, :, :] = 255
 new_image = Image.fromarray(canvas)
 draw = ImageDraw.Draw(new_image)

 #创建绘制对象
 font = ImageFont.truetype("consola.ttf", 10, encoding="unic")
 char_table = list('happy new year ')
 # font = ImageFont.truetype('simsun.ttc', 10)
 # char_table = list(u'新年快乐')

 #开始绘制
 pix_count = 0
 table_len = len(char_table)
 for y in range(height):
 for x in range(width):
  if x % sample_step == 0 and y % sample_step == 0:
  draw.text((x*scale, y*scale), char_table[pix_count % table_len], pix[x, y], font)
  pix_count += 1

 # 保存
 if dst_img_file_path is not None:
 new_image.save(dst_img_file_path)

 print("used time : %d second, pix_count : %d" % ((int(time.time()) - start_time), pix_count))
 print(pix_count)
 new_image.show()


happyNewYear("input.jpg", "output.jpg")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python GAE、Django导出Excel的方法
Nov 24 Python
python中的对象拷贝示例 python引用传递
Jan 23 Python
Python编程之string相关操作实例详解
Jul 22 Python
Python二叉搜索树与双向链表转换算法示例
Mar 02 Python
Python对列表的操作知识点详解
Aug 20 Python
python实现双色球随机选号
Jan 01 Python
python离线安装外部依赖包的实现
Feb 13 Python
基于python代码批量处理图片resize
Jun 04 Python
Python爬虫之Selenium设置元素等待的方法
Dec 04 Python
python palywright库基本使用
Jan 21 Python
利用Python函数实现一个万历表完整示例
Jan 23 Python
Python之Sklearn使用入门教程
Feb 19 Python
Pyinstaller将py打包成exe的实例
Mar 31 #Python
Python pymongo模块用法示例
Mar 31 #Python
Python向MySQL批量插数据的实例讲解
Mar 31 #Python
Python将图片转换为字符画的方法
Jun 16 #Python
Python实现从log日志中提取ip的方法【正则提取】
Mar 31 #Python
Python+OpenCV实现车牌字符分割和识别
Mar 31 #Python
python Opencv将图片转为字符画
Feb 19 #Python
You might like
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
php的webservice的wsdl的XML无法显示问题的解决方法
2014/03/11 PHP
php为字符串前后添加指定数量字符的方法
2015/05/04 PHP
ThinkPHP安装和设置
2015/07/27 PHP
讲解WordPress中用于获取评论模板和搜索表单的PHP函数
2015/12/28 PHP
PHP读取、解析eml文件及生成网页的方法示例
2017/09/04 PHP
javascript优先加载笔记代码
2008/09/30 Javascript
jquery中获得$.ajax()事件返回的值并添加事件的方法
2010/04/15 Javascript
3款实用的在线JS代码工具(国外)
2012/03/15 Javascript
html a标签-超链接中confirm方法使用介绍
2013/01/04 Javascript
JS之Date对象和获取系统当前时间详解
2014/01/13 Javascript
js 截取或者替换字符串中的数字实现方法
2016/06/13 Javascript
详解XMLHttpRequest(一)同步请求和异步请求
2016/09/14 Javascript
jQuery+正则+文本框只能输入数字的实现方法
2016/10/07 Javascript
jQuery插件zTree实现单独选中根节点中第一个节点示例
2017/03/08 Javascript
浅谈pc端rem字体设置的问题
2017/08/03 Javascript
关于ES6箭头函数中的this问题
2018/02/27 Javascript
深入浅出 Vue 系列 -- 数据劫持实现原理
2019/04/23 Javascript
layer ui插件显示tips时,修改字体颜色的实现方法
2019/09/11 Javascript
深入理解Python中的super()方法
2017/11/20 Python
numpy中索引和切片详解
2017/12/15 Python
在python中实现强制关闭线程的示例
2019/01/22 Python
python 批量修改 labelImg 生成的xml文件的方法
2019/09/09 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
2020/06/17 Python
css3实现动画的三种方式
2020/08/24 HTML / CSS
canvas学习笔记之绘制简单路径
2019/01/28 HTML / CSS
毕业生的求职信范文分享
2013/12/04 职场文书
大学生学习2014全国两会心得体会
2014/03/13 职场文书
软件售后服务承诺书
2014/05/21 职场文书
公司合作意向书范文
2014/07/30 职场文书
房屋买卖协议样本
2014/11/16 职场文书
教师“一帮一”结对子活动总结
2015/05/07 职场文书
新郎父母婚礼致辞
2015/07/27 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
MySQL Innodb索引机制详细介绍
2021/11/23 MySQL