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. 感受

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

相关推荐
Robot侠3 小时前
极简LLM入门指南4
大数据·python·llm·prompt·提示工程
等....4 小时前
Miniconda使用
开发语言·python
Java&Develop4 小时前
Aes加密 GCM java
java·开发语言·python
爱笑的眼睛116 小时前
超越MSE与交叉熵:深度解析损失函数的动态本质与高阶设计
java·人工智能·python·ai
Rose sait7 小时前
【环境配置】Linux配置虚拟环境pytorch
linux·人工智能·python
过期动态7 小时前
JDBC高级篇:优化、封装与事务全流程指南
android·java·开发语言·数据库·python·mysql
一世琉璃白_Y8 小时前
pg配置国内数据源安装
linux·python·postgresql·centos
liwulin05068 小时前
【PYTHON】COCO数据集中的物品ID
开发语言·python
小鸡吃米…8 小时前
Python - XML 处理
xml·开发语言·python·开源
我赵帅的飞起8 小时前
python国密SM4加解密
python·sm4加解密·国密sm4加解密