[英]Interpolate/Resize ascii art in python?
我想调整一些 ascii 艺术的大小。 说它看起来像这样:
..K
.T.
.A.
我想将它放大一些 n,所以它看起来像这样 (n=2)
....KK
....KK
..TT..
..TT..
..AA..
..AA..
我想这样做的一种方法是将文本转换为其 ascii 值的矩阵,并使用一些插值函数来调整矩阵的大小,然后将其转换回文本以获得所需的结果,但我一直无法找到可以为我做到这一点的功能。
什么是最简单的方法来做到这一点。 如果它更简单,您可以假设 n 始终为 4。(因为在我目前的情况下,这是我需要的比例)
假设您有一个包含以下内容的文件test.txt
:
..K
.T.
.A.
以下代码将读取文件并生成输出文件test_out.txt
,其中包含水平和垂直相乘的字符,具体取决于您为N
指定的内容:
N = 4
with open('test.txt', 'r') as f:
with open('test_out.txt', 'w') as out_f:
for line in f:
# Repeat characters N times horizontally
output = "".join([N * c for c in line.strip()])
# Repeat lines N times vertically
for _ in range(N):
out_f.write(output + '\n')
....KK
....KK
..TT..
..TT..
..AA..
..AA..
........KKKK
........KKKK
........KKKK
........KKKK
....TTTT....
....TTTT....
....TTTT....
....TTTT....
....AAAA....
....AAAA....
....AAAA....
....AAAA....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.