Открытка на Первое мая¶
Подключим всё необходимое, подгрузим основу и текст.
In [ ]:
using FileIO, Images, ImageShow
In [ ]:
basis = load("$(@__DIR__)/basis.png")
Out[0]:
In [ ]:
text = load("$(@__DIR__)/text.png")
Out[0]:
Не сошлись размеры. :(
In [ ]:
print(string(size(channelview(text))) * " != " * string(size(channelview(basis))))
Сделаем равными размеры картинок и подготовим их к наложению друг на друга.
In [ ]:
new_basis = channelview(basis)
c_basis = zeros(3,size(new_basis,1),size(new_basis,2))
for i in 1:3
c_basis[i,:,:] = new_basis
end
text_new = imresize(text, ratio=2)
text_new = imresize(text_new, size(channelview(text),2)-150, size(c_basis,3))
x = (size(c_basis,2)-size(channelview(text_new),2))
arr_zero = RGB.(zeros(x,size(c_basis,3)))
text_new = [text_new; arr_zero]
c_text = channelview(text_new)
c_text = c_text[1:3,:,:]
c_text[c_text.>0.999999999].=0.0;
print(string(size(c_text)) * " = " * string(size(c_basis)))
Выполним наложение.
In [ ]:
postcard = c_basis*0.75 + c_text*0.25
postcard = RGB.(postcard[1,:,:], postcard[2,:,:], postcard[3,:,:])
Out[0]:
Добавим красного цвета в духе праздника!
In [ ]:
с_postcard = channelview(postcard)
postcard = RGB.(с_postcard[1,:,:]*2,с_postcard[2,:,:],с_postcard[3,:,:])
Out[0]:
Сохраняй, чтобы не потерять нашу классную открытку!
In [ ]:
save("postcard.jpg", postcard)
Out[0]: