Mogę skopiować obraz w Gimp i wkleić go do dokumentu OpenOffice.
Jak to zrobić (skopiować lub wkleić obraz) z wiersza poleceń?
Mogę skopiować obraz w Gimp i wkleić go do dokumentu OpenOffice.
Jak to zrobić (skopiować lub wkleić obraz) z wiersza poleceń?
Odpowiedzi:
Jak stwierdzono tutaj , kluczem do wklejenia danych binarnych do pliku xclip
jest określenie, jakie typy multimediów masz w schowku. W przypadku PNG możesz:
xclip -selection clipboard -t image/png -o > "`date '+%Y-%m-%d_%T'`.png"
Lub image/jpeg
i .jpg
dla JPEG.
Więc teraz ~/Dropbox/.mybashrc
dodaję alias (clipboard2photo), aby łatwo wkleić do pliku obrazu (może kiedyś będziemy go mieć na Nautilusie ).
Uważam, że powód, dla którego skrypt Lwa Aleksiejewa czasami nie działa (w niektórych systemach) został wyjaśniony w tej odpowiedzi na podobne pytanie. Ważna część cytowana tutaj:
Jedna osobliwość różniąca się od większości innych systemów: jeśli program będący właścicielem zaznaczenia (schowek) zniknie, to samo spowoduje zaznaczenie.
Kiedy uruchamiam skrypt Leo w powłoce Pythona, działa on tak długo, jak działa powłoka. Myślę więc, że dane schowka zostaną utracone, kiedy skrypt zostanie zakończony. Rozwiązanie opublikowane w odpowiedzi działa dla mnie:
#!/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()
Aktualizacja od _Vi: Dla kompletności, dodaj schowek-> skrypt pliku:
#!/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", {})
Następujący skrypt python / pygtk wykonuje to zadanie:
#!/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]);
(Źródło: http://ubuntuforums.org/showthread.php?t=1689889 )
Aby tego użyć sudo apt-get install python pygtk
, wklej powyższy kod do skryptu, chmod +x
aby był wykonywalny, i powinieneś być gotowy.
wget http://upload.wikimedia.org/wikipedia/commons/d/d9/Test.png && ./test.py Test.png
gdzie test.py jest dokładnie tym, co tu wkleiłem. Wkleja się dobrze w Gimpa.