48 lines
1.9 KiB
Python
48 lines
1.9 KiB
Python
from PIL import Image
|
|
|
|
im = Image.open("IUT_RT_STEG.png").convert('RGBA')
|
|
|
|
width, height = im.size
|
|
|
|
red, green, blue, alpha = im.split()
|
|
|
|
s = ""
|
|
for y in range(55):
|
|
for x in range(width):
|
|
a = alpha.getpixel((x,y))
|
|
if a == 254:
|
|
s=s+str(blue.getpixel((x,y))%2)
|
|
if a == 253:
|
|
s=s+str(green.getpixel((x,y))%2)
|
|
if a == 252:
|
|
s=s+str(red.getpixel((x,y))%2)
|
|
if a == 251:
|
|
s=s+str(blue.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)
|
|
if a == 250:
|
|
s=s+str(blue.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)
|
|
if a == 249:
|
|
s=s+str(green.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)
|
|
if a == 248:
|
|
s=s+str(green.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)
|
|
if a == 247:
|
|
s=s+str(red.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)
|
|
if a == 246:
|
|
s=s+str(red.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)
|
|
if a == 245:
|
|
s=s+str(blue.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)
|
|
if a == 244:
|
|
s=s+str(blue.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)
|
|
if a == 243:
|
|
s=s+str(green.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)
|
|
if a == 242:
|
|
s=s+str(green.getpixel((x,y))%2)+str(red.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)
|
|
if a == 241:
|
|
s=s+str(red.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)
|
|
if a == 240:
|
|
s=s+str(red.getpixel((x,y))%2)+str(green.getpixel((x,y))%2)+str(blue.getpixel((x,y))%2)
|
|
|
|
for i in range(len(s)//8):
|
|
val = int(s[i*8+0])*128 + int(s[i*8+1])*64 + int(s[i*8+2])*32 + int(s[i*8+3])*16 + int(s[i*8+4])*8 + int(s[i*8+5])*4 + int(s[i*8+6])*2 + int(s[i*8+7])*1
|
|
c = chr(val)
|
|
print(c, end='')
|