Redimensiona e mescla imagens verticalmente

0

Como redimensionar imagens (width = média da largura de todas as imagens) e fundi-los verticalmente de cima para baixo?

    
por ProgAndPlay 20.07.2017 / 07:32

1 resposta

1

Este é o script imergv.py , em Python, que faz exatamente isso. Imagemagick é obrigatório. Observe que, antes de executar o script, você precisa cd no diretório com as imagens. Alguns visualizadores de imagens adequados para ver imagens grandes são Viewnior, Nomacs e Gwenview. O script gerará algumas tmpfXXXX.png images e um arquivo chamado output.png com o resultado final.

#!/usr/bin/python

import os

f = os.popen('/bin/ls -1')
fil = f.read()
arfils = fil.split("\n")
arfils.pop()
num = 0
tot = 0

for snc in arfils:
f = os.popen( "/usr/bin/identify -ping -format '%w %h' " + '\"' + snc + '\"' )
    rslt = f.read()
    woh = rslt.split(" ")
    intvl = int(woh[0])
    tot = tot + intvl
    num = num + 1

avg = tot // num

#resize images
num = 1
allfil = ""
for snc in arfils:
    nout = "tmpf" + str(num).zfill(4) + ".png"
    allfil = allfil + nout + " "
    convcmd = "convert " + '\"' + snc + '\"' + " -resize " + str(avg) + " -quality 100 "
    convcmd = convcmd + '\"' + nout + '\"'
    #print convcmd
    f = os.popen(convcmd)
    num = num + 1

mrg = "convert -append " + allfil + "output.png"
f = os.popen(mrg)
    
por ProgAndPlay 20.07.2017 / 07:32