こういう質問に回答するのはいいのかわかりませんが1ヶ月前に作ったことがあるのでプログラムだけ(pythonです)
この部分です。https://github.com/kumitatepazuru/cszp/blob/master/cszp/cszp_markdown.py#L144-L156
python
1def background(file):
2 img = Image.open(file)
3 terminal_size = list(shutil.get_terminal_size())
4 terminal_size[0] /= 2
5 img.thumbnail(terminal_size)
6 img = np.array(img)
7 for no, i in enumerate(img):
8 print("")
9 if no == 0:
10 print("\033[1;1H",end="")
11 for j in i:
12 print("\033[48;2;"+str(j[0])+";"+str(j[1])+";"+str(j[2])+"m ",end="")
13 print("\033[0m",end="")
追記(注意喚起)
丸投げ系質問はteratailでは推奨されていません。他の質問サイトを使用してください!