리눅스의 커맨드 라인에서 클립 보드로 그림을 복사하는 방법은 무엇입니까? 문서에 붙여 넣을 수 있습니다. 명령 줄에서 이미지를

Gimp에서 이미지를 복사하여 OpenOffice 문서에 붙여 넣을 수 있습니다.

명령 줄에서 이미지를 복사하거나 붙여 넣는 방법은 무엇입니까?



답변

here 에서 볼 수 있듯이 이진 데이터를 파일에 붙여 넣는 키 xclip는 클립 보드에 어떤 미디어 유형 이 있는지 알려주는 것 입니다. PNG의 경우 다음을 수행 할 수 있습니다.

xclip -selection clipboard -t image/png -o > "`date '+%Y-%m-%d_%T'`.png"

또는 image/jpeg.jpgJPEG합니다.

그래서 이제는 ~/Dropbox/.mybashrc이미지 파일에 쉽게 붙여 넣을 별칭 (clipboard2photo)을 추가합니다 (언젠가 우리는 노틸러스에 넣을 것입니다 ).


답변

Leo Alekseyev 스크립트가 때때로 (일부 시스템에서) 작동하지 않는 이유는이 질문 에 대한 비슷한 질문에 설명되어 있습니다. 여기에 인용 된 중요한 부분 :

대부분의 다른 시스템과는 다른 한 가지 이상한 점이 있습니다. 선택 (클립 보드)을 소유 한 프로그램이 사라지면 선택도 마찬가지입니다.

파이썬 쉘에서 Leo의 스크립트를 실행하면 쉘이 실행되는 한 작동합니다. 스크립트가 종료되면 클립 보드 데이터가 손실된다고 생각합니다. 답변에 게시 된 솔루션이 나를 위해 일하고 있습니다.

#!/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()

_Vi에서 업데이트 : 완전성을 위해 클립 보드-> 파일 스크립트를 추가하십시오.

#!/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", {})

답변

다음 python / pygtk 스크립트가 작업을 수행합니다.

#!/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]);

(출처 : http://ubuntuforums.org/showthread.php?t=1689889 )

이것을 사용하려면 sudo apt-get install python pygtk위의 코드를 스크립트에 붙여 chmod +x실행 파일로 만드십시오.