명령줄에서 클립보드로 이미지 복사

명령줄에서 클립보드로 이미지 복사

Bash에서 이미지를 클립보드에 복사하는 방법이 있습니까?

예를 들어 이미지가 있는 경우 유사한 명령을 사용하여 나중에 inkscape로 이동하여 붙여넣기를 mypic.png원합니다 .clipcopy mypic.png

답변1

당신은 그것을 사용할 수 있습니다Q 복사이를 위해. 웹사이트에서:

고급 기능을 갖춘 클립보드 관리자

  • CopyQ는 검색 및 편집 가능한 기록을 갖춘 클립보드 관리자입니다.
  • 리눅스와 윈도우를 지원합니다.
  • OS X 10.9+에 대한 실험적 지원.
  • 텍스트, HTML, 이미지 및 기타 사용자 정의 형식을 저장합니다.
  • 고급 명령줄 인터페이스 및 스크립팅.

이미지 복사(MIME 유형 지정 필요):

copyq write image/png - < file.png && copyq select 0

데이터 파일을 복사합니다(MIME 유형을 지정해야 함).

copyq write application/pdf - < file.pdf && copyq select 0

자세한 내용은 위키를 확인하세요.문서 및 사용 예.

또한보십시오:

답변2

여기에서 답변을 확인하세요.https://askubuntu.com/a/759660/187689

xclip -selection clipboard -t image/png -i example.png

답변3

이 Python 스크립트통과세사르코프당신이 원하는 것을 하라고 주장하십시오.

#! /usr/bin/python
import pygtk
pygtk.require('2.0')
import gtk
import os
import sys

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]);

답변4

내가 편집했습니다@don_crissti~의답변파이프된 입력을 허용합니다.

#!/usr/bin/env python

import sys
from gi.repository import Gtk, Gdk, GdkPixbuf

def store(pixbuf):
        clipboard = Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD)
        clipboard.set_image(pixbuf)
        clipboard.store()

def copy_image(f):
    image = Gtk.Image.new_from_file(f)
    if image.get_storage_type() == Gtk.ImageType.PIXBUF:
        pixbuf = image.get_pixbuf()
        store(pixbuf)
    else:
        print("Copying failed")

def copy_pixbuf(data):
    loader = GdkPixbuf.PixbufLoader()
    loader.write(data)
    loader.close()
    pixbuf = loader.get_pixbuf()
    store(pixbuf)

if sys.stdin.isatty():
    if len(sys.argv) != 2:
        print("Usage: image-to-clipboard.py image")
    else:
        f = sys.argv[1]
        copy_image(f);
else:
    data = sys.stdin.read()
    copy_pixbuf(data)

관련 정보