当前位置: 首页 > news >正文

网站正在建设中 源码下载中山做网站推广公司

网站正在建设中 源码下载,中山做网站推广公司,权威的深圳网站推广,长沙市网站设计公司说明:有的项目启动时,会在控制台输出下面的图案。本文介绍Spring Boot项目如何自定义项目启动时的图案; 生成字符图案 首先,找到一张需要设置的图片,使用下面的代码,将图片转为字符文件; impo…

说明:有的项目启动时,会在控制台输出下面的图案。本文介绍Spring Boot项目如何自定义项目启动时的图案;

在这里插入图片描述

生成字符图案

首先,找到一张需要设置的图片,使用下面的代码,将图片转为字符文件;

import time
import numpy as np
from PIL import Image, ImageDraw, ImageFont
import os# 设置字符的宽度与像素的比例,即一个像素对应多少个字符
sample_rate = 0.1250
# 图片缩放比例
reduce_rate = 0.5# 将图片转换为字符图片
def ascii_art(file):# 打开这个图片im = Image.open(file)# 加载字体样式和设置字体大小font = ImageFont.truetype("SourceCodePro-Bold.ttf", size=14)# 得出字符的纵横比aspect_ratio = font.getbbox("x")[2] / font.getbbox("x")[3]# 设置缩小图片的尺寸:# 宽度 = 原宽度 * 字符的宽度与像素的比例、高度 = 原高度 * 字符的宽度与像素的比例 * 字符的纵横比)new_im_size = np.array([im.size[0] * sample_rate * reduce_rate, im.size[1] * sample_rate * aspect_ratio * reduce_rate]).astype(int)# 缩小图像im = im.resize(new_im_size)# 转换为灰度图像im = im.convert("L")# 转换为numpy数组以进行图像处理im = np.array(im)# 设置字符集symbols = np.array(list(" ^->(LYXH0@M"))# symbols = np.array(list(" ^>LX0M"))# 将灰阶值映射到字符集if im.max() != im.min():im = (im - im.min()) / (im.max() - im.min()) * (symbols.size - 1)# 生成ascii艺术ascii = symbols[im.astype(int)]# 创建用于绘制ascii文本的输出图像letter_size = font.getbbox("x")[2], font.getbbox("x")[3]# 设置输出图片的大小=缩小后的图片*字符大小im_out_size = new_im_size * letter_size# 设置背景颜色为黑色bg_color = "black"# 绘制背景图im_out = Image.new("RGB", tuple(im_out_size), bg_color)# 创建一个绘图对象draw = ImageDraw.Draw(im_out)# 逐个字符绘制y = 0           # 设置字符在图片中的高度,初始值为0count = 0begin_time = time.time()for i, line in enumerate(ascii):            # 行for j, ch in enumerate(line):           # 列count = count + 1draw.text((letter_size[0] * j, y), ch[0], font=font)y += letter_size[1]end_time = time.time()print('单张图片用时:%d秒' % (end_time - begin_time))# 保存到一个文本文件里with open(file + ".txt", "w") as f:f.write("\n".join(["".join(row) for row in ascii]))if __name__ == "__main__":# 输入路径,可将该路径下存放的所有图片进行转换path = r''file_list = os.listdir(path)for file in file_list:ascii_art(path + '\\' + file)

如下,是图片转换后的字符文件;

在这里插入图片描述

代码详细说明参考我之前写的这篇文章;

  • 挑战做出全网最牛逼的字符动画

项目中设置

在Resource文件夹下,创建一个“banner.txt”文本文件。banner是横幅的意思,文件里的内容会在项目启动时展示在控制台中,如下:

在这里插入图片描述

启动项目;

在这里插入图片描述

可在settings里,将字体行高设置为1.0,这样图案不会被拉伸,另外可以在banner.txt里设置字符的颜色(${AnsiColor.颜色}),如下:

在这里插入图片描述

http://www.cadmedia.cn/news/11470.html

相关文章:

  • 腾讯服务器做网站seo顾问张智伟
  • 哪些网站可以免费看剧做互联网推广的公司
  • 贵阳网站建设q479185700惠长沙网站seo收费
  • 北京哪里有网站建设设计今日油价92汽油价格表
  • 江门网站建设设计策划是做什么的
  • 哈尔滨大型网站建设seo视频教程
  • 网站建设与维护实训报告宁波seo推广定制
  • 艺术类 网站建设方案山东服务好的seo
  • 娱乐网站怎么制作网站统计分析工具
  • 国家征信系统查询官网网站优化排名
  • 品牌全案公司seo营销推广多少钱
  • 江西南昌电子商务网站建设公司百度平台商家客服电话
  • 公司网站建设费计入什么费用seo培训优化
  • 怎样提高网站流量百度快照在哪里
  • 网站改版有什么影响谷歌搜索引擎香港免费入口
  • 快递公司网站制作磁力搜索引擎
  • 电子商务网站建设 教学ppt合肥网站建设
  • 揭阳企业网站建设开发媒体发稿推广
  • 学校网站建设关键技术灰色行业关键词优化
  • 公司怎么做网页seo标题优化导师咨询
  • 网站seo快排软件网址收录网站
  • 南昌广告制作有限公司百度快照优化培训班
  • 广告网站建设公司seo系统源码出售
  • 网站升级及政务新媒体建设方案什么是整合营销并举例说明
  • 网站优化关键词网络营销战略有什么用
  • ps做网站效果图成都网站优化公司
  • 网站建设金网科技竞价出价怎么出
  • 云南省安宁市建设厅官方网站建站系统源码
  • 上海政策最新规定网站优化排名推广
  • 长春新建高铁站网站排名优化工具