Posso copiar a imagem no Gimp e colá-la no documento do OpenOffice.
Como fazer isso (copiar ou colar imagem) na linha de comando?
Posso copiar a imagem no Gimp e colá-la no documento do OpenOffice.
Como fazer isso (copiar ou colar imagem) na linha de comando?
Respostas:
Como encontrado aqui , a chave para colar dados binários em um arquivo xclip
é informar quais tipos de mídia você possui na área de transferência. Para PNG, você pode:
xclip -selection clipboard -t image/png -o > "`date '+%Y-%m-%d_%T'`.png"
Ou image/jpeg
e .jpg
para JPEG.
Então agora no meu ~/Dropbox/.mybashrc
eu adiciono um alias (clipboard2photo) para colar facilmente no arquivo de imagem (talvez um dia o tenhamos no Nautilus ).
Eu acredito que a razão pela qual o script Leo Alekseyev às vezes não funciona (em alguns sistemas) é explicada nesta resposta a uma pergunta semelhante. Parte importante citada aqui:
Uma singularidade diferente da maioria dos outros sistemas: se o programa que possui a seleção (área de transferência) desaparecer, o mesmo ocorre com a seleção.
Quando executo o script de Leo no shell python, ele está funcionando, desde que o shell esteja em execução. Então, acho que os dados da área de transferência são perdidos quando o script é finalizado. A solução postada na resposta está funcionando para mim:
#!/usr/bin/env python
import gtk
import sys
count = 0
def handle_owner_change(clipboard, event):
global count
print 'clipboard.owner-change(%r, %r)' % (clipboard, event)
count += 1
if count > 1:
sys.exit(0)
image = gtk.gdk.pixbuf_new_from_file(sys.argv[1])
clipboard = gtk.clipboard_get()
clipboard.connect('owner-change', handle_owner_change)
clipboard.set_image(image)
clipboard.store()
gtk.main()
Atualização de _Vi: Para completar, adicione o script clipboard-> file:
#!/usr/bin/python
import gtk, pygtk
pygtk.require('2.0')
import sys, os
clipboard = gtk.clipboard_get()
img = clipboard.wait_for_image()
img.save(sys.argv[1], "png", {})
O seguinte script python / pygtk faz o trabalho:
#!/usr/bin/python
import gtk, pygtk
pygtk.require('2.0')
import sys, os
def copy_image(f):
assert os.path.exists(f), "file does not exist"
image = gtk.gdk.pixbuf_new_from_file(f)
clipboard = gtk.clipboard_get()
clipboard.set_image(image)
clipboard.store()
copy_image(sys.argv[1]);
(Fonte: http://ubuntuforums.org/showthread.php?t=1689889 )
Para usar isso, sudo apt-get install python pygtk
cole o código acima em um script, chmod +x
para torná-lo executável, e você deve estar pronto.
wget http://upload.wikimedia.org/wikipedia/commons/d/d9/Test.png && ./test.py Test.png
:, onde test.py é exatamente o que é colado aqui. Cola bem no Gimp.