Je peux copier une image dans Gimp et la coller dans un document OpenOffice.
Comment faire (copier ou coller une image) depuis la ligne de commande?
Je peux copier une image dans Gimp et la coller dans un document OpenOffice.
Comment faire (copier ou coller une image) depuis la ligne de commande?
Réponses:
Comme on le voit ici , la clé pour coller des données binaires dans un fichier xclip
est de dire quels types de médias vous avez dans le presse-papiers. Pour PNG, vous pouvez:
xclip -selection clipboard -t image/png -o > "`date '+%Y-%m-%d_%T'`.png"
Ou image/jpeg
et .jpg
pour JPEG.
Alors maintenant, sur mon ~/Dropbox/.mybashrc
j'ajoute un alias (clipboard2photo) pour coller facilement dans le fichier image (peut-être un jour nous l'aurons sur Nautilus ).
Je crois que la raison pour laquelle le script Leo Alekseyev ne fonctionne pas parfois (sur certains systèmes) est expliquée dans cette réponse à une question similaire. Partie importante citée ici:
Une bizarrerie différente de la plupart des autres systèmes: si le programme propriétaire de la sélection (presse-papiers) disparaît, la sélection aussi.
Lorsque j'exécute le script de Leo dans un shell python, cela fonctionne, tant que le shell fonctionne. Je pense donc que les données du presse-papiers sont perdues lorsque le script est terminé. La solution affichée dans la réponse, fonctionne pour moi:
#!/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()
Mise à jour à partir de _Vi: pour être complet, ajouter le script de presse-papiers-> fichier:
#!/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", {})
Le script python / pygtk suivant fait le travail:
#!/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]);
(Source: http://ubuntuforums.org/showthread.php?t=1689889 )
Pour l'utiliser sudo apt-get install python pygtk
, collez le code ci-dessus dans un script, chmod +x
pour le rendre exécutable, et vous devriez être prêt à partir.
wget http://upload.wikimedia.org/wikipedia/commons/d/d9/Test.png && ./test.py Test.png
:, où test.py est exactement ce qui est collé ici. Colle bien dans Gimp.