Exibir imagem com ajuste à janela e ao modo de instância única

1

Eu tenho um fluxo de imagens (jpg) e quero exibir cada uma assim que ela chegar. Então, basicamente, aqui está o que eu quero:

  1. Atualmente, há alguma imagem na tela;
  2. uma nova imagem chega, meu script é chamado com o caminho para a imagem;
  3. a nova imagem está na tela em vez da antiga;
  4. goto 2.

O que eu tentei:

  1. display do ImageMagick. Ele não tem uma opção para dimensionar a imagem para caber na janela, isso é ruim, mas, bem, posso usar -resize para dimensionar para um tamanho fixo razoável. Também tem -remote para exibir uma nova imagem na mesma instância. O problema é que não há como combinar -resize e -remote .
  2. convert + display . Usando convert para redimensionar a imagem (novamente, para algum tamanho fixo que seja desafortunado), salve-a em um local temporário e chamando display -remote para exibi-la. Por alguma razão, a etapa convert é terrivelmente lenta.
  3. Gwenview, kuickshow. Nenhum dos dois parece exibir uma nova imagem na instância anterior.
  4. feh pode ajustar imagens ( --scale-down ), mas não tem um modo de instância única. O mais próximo que consegui é usar feh --bg-max , que dimensiona a imagem para caber na tela e define como plano de fundo. Isso funciona muito bem, mas é claramente um truque feio. Também seria bom exibir imagens em janelas normais, não na raiz.

Alguma idéia?

    
por kirelagin 22.08.2014 / 14:41

1 resposta

0

Geeqie é capaz de fazer o que eu quero.

Ele tem duas opções úteis: -r para atuar em uma instância remota e -t para ocultar toda a interface. Então:

geeqie -r -t <img_file>

faz exatamente o que eu descrevi: abre <img_file> na mesma janela que se ajusta ao tamanho da janela.

    
por 14.07.2015 / 15:38