Python用图片生成banner.txt文件

Python用图片生成banner.txt文件

1. 代码

python 复制代码
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2025/7/1 17:18
# @Author  : ning
# @File    : generateBanner.py
# @Software: PyCharm
from PIL import Image


def process():
    print(f'Hello, World!')
    # 打开图片
    image = Image.open(r'logo.png').convert('L')  # 将图片转为灰度模式,这里需把'your_image_path.jpg'替换为你实际图片路径

    # 设置缩放比例,例如0.2表示将图片缩小为原来的20%,可按需调整
    scale = 0.2
    new_width = int(image.width * 0.1)
    new_height = int(image.height * 0.05)
    image = image.resize((new_width, new_height))

    width, height = image.size

    # 定义用于替换像素的字符集,从亮到暗
    ascii_chars = [' ', '.', '-', '=', '+', '*', '#', '%', '@']

    result = []
    for y in range(height):
        line = ""
        for x in range(width):
            pixel = image.getpixel((x, y))
            # 根据像素值映射到字符集
            char_index = int(pixel / 256 * len(ascii_chars))
            line += ascii_chars[char_index]
        result.append(line)

    # 将结果写入文件
    with open('banner.txt', 'w') as f:
        for line in result:
            f.write(line + '\n')


if __name__ == '__main__':
    process()

2. 感受

还可以吧,对比度强的使用体验还不错,

相关推荐
程序媛徐师姐几秒前
Python基于Django的小区果蔬预定系统【附源码、文档说明】
python·django·小区果蔬预定系统·果蔬预定·python小区果蔬预定系统·小区果蔬预定·python果蔬预定系统
小何code12 分钟前
人工智能【第8篇】监督学习实战:线性回归与逻辑回归算法详解(万字长文+完整代码实现)
人工智能·python·学习·机器学习·逻辑回归·线性回归
EnCi Zheng13 分钟前
M5-markconv自定义CSS样式指南 [特殊字符]
前端·css·python
刘~浪地球25 分钟前
DeepSeek V4 应用实战:构建智能数据分析Agent
python·数据挖掘·数据分析
嘻嘻哈哈樱桃32 分钟前
牛客经典101题解题集--贪心算法+模拟
java·python·算法·贪心算法
BU摆烂会噶1 小时前
【LangGraph】持久化实现的三大能力——人机交互
数据库·人工智能·python·langchain·人机交互
.柒宇.2 小时前
AI掘金头条项目部署实践指南
linux·运维·python·fastapi
WL_Aurora2 小时前
Python 算法基础篇之树和二叉树
python·算法
小郑加油2 小时前
python学习Day11:认识与创建CSV文件
开发语言·python·学习
Pkmer2 小时前
Java程序员大战Python面向对象
python·ai编程