Como alterar várias imagens no gimp que já estão abertas

0

normalmente eu usaria o convert do imagemagick, mas eu tinha um monte de imagens digitalizadas que eu tinha que cortar o conteúdo que estava em todo lugar.

Então eu abri umas 30 imagens no gimp, cortei manualmente todas elas. Agora eu me vi querendo redimensioná-los para 66% do tamanho e exportá-los todos para o nome original (eles eram abertos a partir de imagens PNG)

e eu percebo que não há maneira fácil de fazer isso. ou está lá?

Todas as pesquisas me dizem para usar linha de comando ou scripts. mas nada que funcione em imagens já abertas através da interface do usuário.

    
por gcb 20.04.2016 / 01:46

1 resposta

1

O console Python pode realmente permitir que você faça isso em algumas linhas de tela diretamente, sem criar um script -

for img in gimp.image_list():
    img.scale(int(img.width * 0.66), int(img.height*0.66))
    tmp = pdb.gimp_image_duplicate(img)
    pdb.gimp_image_merge_visible_layers(tmp, CLIP_TO_IMAGE)
    pdb.gimp_file_save(tmp, tmp.layers[0], img.filename, img.filename)
    pdb.gimp_image_delete(tmp)

O que leva mais linha do que deveria é que o GIMP realmente quer "salvar" a imagem como está - então, é necessário os passos de duplicar (internamente), mesclar em uma única camada e excluir (apenas removê-la do GIMP) memória, não do disco) - se todas as suas imagens já são uma única camada, isso pode ser reduzido a estas 3 linhas:

for img in gimp.image_list():
    img.scale(int(img.width * 0.66), int(img.height*0.66))
    pdb.gimp_file_save(img, img.layers[0], img.filename, img.filename)

Para digitá-los (ou simplesmente copiar e colar diretamente daqui para lá), vá para Filters->Python->Console e digite ou cole os trechos acima no prompt >>> .

Enquanto você estiver nisso, se quiser automatizar qualquer outra operação, reserve um tempo para clicar no botão "procurar" na caixa de diálogo do console Python e verifique todas as operações disponíveis. Atingir o botão "Aplicar" irá colar um modelo da chamada para essa função no seu prompt (não se esqueça de prefixar espaços para esse modelo colado, para que esta chamada seja alinhada dentro do bloco for - e para substituir o modelo nomes de variáveis sugeridos para parâmetros reais)

    
por 20.04.2016 / 22:51

Tags