簡體   English   中英

在python中插入/調整ascii藝術?

[英]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')

N = 2 的輸出 (test_out.txt):

....KK
....KK
..TT..
..TT..
..AA..
..AA..

N = 4 的輸出 (test_out.txt):

........KKKK
........KKKK
........KKKK
........KKKK
....TTTT....
....TTTT....
....TTTT....
....TTTT....
....AAAA....
....AAAA....
....AAAA....
....AAAA....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM