鱼C论坛

 找回密码
 立即注册
查看: 13494|回复: 83

[作品展示] 将图片转为有趣的字符图片,更新 0.2.2 支持自定义字符,已上传 PyPi

[复制链接]
发表于 2021-9-16 17:15:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 hrpzcf 于 2021-9-23 19:55 编辑

虽然已经有很多大佬发过了,但是我还是要发

将图片转字符组成的图片,非转文本文件。

已更新至 0.2.2 版本:
makeImage函数新增关键字参数chars,自定义用于图像的字符;
新增两个函数grayscaleOf和sortByGrayscale,用于查询字符的等效灰度值,和按等效灰度值排序给出的字符串。


效果:
GIF 2021-9-19 0-22-58.gif

用法:

1. 先通过pip安装:
py -m pip install imgtoch -i https://mirrors.cloud.tencent.com/pypi/simple
2.参数说明:
from imgtoch import makeImage

makeImage(
    "源图片路径",
    "生成的图片保存路径",  # 此路径应包括文件名
    chars = None, # 包含用于图像的字符的字符串,字符数应大于 1,无需手动按等效灰度值排序
    scale = 1, # 采集率,0 < scale <= 1,可省略
    quality = 80, # 图片保存质量,大于 0 小于等于 100
    fontPath = "字体路径", # 可省略
    fontSize = 14, # 字体大小,仅指定字体路径时生效,可省略
    horzSep = 2, # 字符横向间隔,可省略
    vertSep = 2, # 字符纵向间隔,可省略
    keepRatio=True, # 是否保持原比例。因字体高宽不一定相等,生成的图片高宽会变形,此项为 True 则抵消变形,可省略
    keepSize=False, # 一个字符对应一个像素点,因字符有大小,所以生成的图片尺寸会变化,此项为 True 会将生成的图片缩放至原图尺寸,可省略
)

3. 实例 1:
from imgtoch import makeImage

# 大图片尽量将 scale 设置的小些,否则生成的图片会比较大
# 字体大小 fontSize 也是影响最终生成的图片大小的因素之一
makeImage("1.jpg", "new.jpg", scale=0.2)  # 图片 1.jpg 已在当前目录中

4. 实例 2:
from imgtoch import *

# 获取字符'#'的等效灰度值
print(grayscaleOf("#")) # ('#', 170)

# 将给定字符串按等效灰度值排序
print(sortByGrayscale("H oa.:sjv@%^a'"))
# 结果:['H', '@', 'a', '%', 'a', 's', 'j', 'o', 'v', '^', ':', "'", '.', ' ']
# 其中'a'和'%'的等效灰度值应该是相等的所以出现了'%'被夹在两个'a'中间的问题

# 更具体的参数可以看 IDE 提示或者使用 help 函数

源代码:
游客,如果您要查看本帖隐藏内容请回复
[/hide]

完整项目结构见:
https://gitee.com/hrpzcf/imgtoch
https://github.com/hrpzcf/imgtoch



小技巧 - 想要生成的图片中的字符能清晰可见:
参数scale不宜设置的过小,对于一般相片大小(如2976*3968)来说,0.2就还不错,1080*1920的照片则用0.3,效果也还可以;
其次要指定字体路径fontPath(不然字体大小不生效),将字体大小fontSize设置的大一点,比如36;
最后参数keepSize应设置为False,这样,最终生成的图片会非常大,但把图片放大后字符也一样清晰。

评分

参与人数 5荣誉 +21 鱼币 +21 贡献 +11 收起 理由
高山 + 2
Twilight6 + 6 + 6 + 6 感谢楼主无私奉献!
qq1151985918 + 5 + 5 鱼C有你更精彩^_^
糖甜弯了嘴 + 5 + 5 + 3 封装的真好,牛!
小伤口 + 5 + 5 amazing!!!!!!!!!!!!!!!

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-7-13 17:15:19 | 显示全部楼层
666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-5-31 23:01:30 | 显示全部楼层
okk
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-31 11:59:54 | 显示全部楼层
感谢楼主无私奉献!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-3 21:58:44 | 显示全部楼层
66666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-3 21:40:04 | 显示全部楼层
求代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-3 10:49:41 | 显示全部楼层
1111111
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-2 00:32:59 | 显示全部楼层
期末作业靠你了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-26 17:30:04 | 显示全部楼层
来看看~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-11 13:35:28 From FishC Mobile | 显示全部楼层
进收藏夹吃灰吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-11 00:25:39 | 显示全部楼层
https://gitee.com/hrpzcf/imgtoch
中国的网站不行,要登录才能看,违背互联网开放思维,还宣称传播开源,呸
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

发表于 2022-5-23 16:04:35 | 显示全部楼层
棒棒哒
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-2-4 10:06:11 | 显示全部楼层
学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-10-18 21:36:43 | 显示全部楼层
6666666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-12 16:09:02 | 显示全部楼层
大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-11 22:51:58 | 显示全部楼层
收藏收藏
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-11 16:54:19 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-9-30 20:57:25 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-9-23 21:24:30 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-9-23 16:57:19 | 显示全部楼层
6666,好厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-22 23:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表