Pergunta

Se eu tiver um arquivo XCF (ou qualquer outro suportado pelo GIMP), como posso convertê -lo, por exemplo, PNG para exibição ou processamento adicional?

Foi útil?

Solução

Estou alguns anos atrasado, mas pensei em acrescentar o que acho que é de longe a melhor solução: há uma suíte de ferramentas chamada Xcftools (no Ubuntu, apt-get install xcftools), que tem um utilitário chamado xcf2png Isso faz esse trabalho perfeitamente.

xcf2png image.xcf -o image.png

Isso é muito melhor do que a) usar o ImageMagick (que, como eu disse em um comentário acima, está terrivelmente quebrado), ou b) usando o GIMP (que possui uma linguagem de script extremamente complicada para simplesmente exportar uma imagem).

Outras dicas

Eu acho Imagemagick deve fazer o que você quiser (e ainda mais)

convert image.xcf image.png

Uma solução muito boa (e explicações!) Pode ser encontrada aqui. Em suma, há um esquema de alimentação de scripts de bash/lisp para o gimp

#!/bin/bash
{
cat <<EOF
(define (convert-xcf-to-jpeg filename outfile)
  (let* (
     (image (car (gimp-file-load RUN-NONINTERACTIVE filename filename)))
     (drawable (car (gimp-image-merge-visible-layers image CLIP-TO-IMAGE)))
     )
    (file-jpeg-save RUN-NONINTERACTIVE image drawable outfile outfile .9 0 0 0 " " 0 1 0 1)
    (gimp-image-delete image) ; ... or the memory will explode
    )
)

(gimp-message-set-handler 1) ; Messages to standard output
EOF

for i in *.xcf; do
  echo "(gimp-message \"$i\")"
  echo "(convert-xcf-to-jpeg \"$i\" \"${i%%.xcf}.jpg\")"
done

echo "(gimp-quit 0)"
} | gimp -i -b -

Mas veja a página para a história completa. Vale a pena.

Muito poucos programas, se houver, outros programas além do GIMP, leia os arquivos XCF. Isso é por design dos desenvolvedores do GIMP, o formato não é realmente documentado ou suportado como um formato de arquivo de uso geral.

Dito isto, observe usar o próprio Gimp, usando argumentos da linha de comando (especialmente o --batch opção).

EDITAR: Parece Como se o ImageMagick suportasse o XCF, esse é provavelmente uma rota mais fácil se o suporte parecer bom o suficiente. Eu não testei, e a documentação não diz muito. Eu ficaria um pouco cauteloso.

Se você deseja converter em massa imagens .xcf para .png, poderá achar este script mais útil:

#! /bin/bash -peux
exec xcf2png $1 -o ${1%.xcf}.png

Salve em algum lugar no seu caminho como xcftopng (Note o to ao invés de 2) e chame assim:

ls *.xcf|xargs -l xcftopng
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top