代码之家  ›  专栏  ›  技术社区  ›  Jamie Wong

二进制(图像)数据剪贴板(OS X)

  •  5
  • Jamie Wong  · 技术社区  · 14 年前

    当我将内容复制到剪贴板时,我可以将它们转储到我的控制台窗口或使用重定向到文件

    pbpaste > out.txt

    但如果我右键单击并在浏览器中进行图像和复制,则尝试

    pbpaste > out.jpg

    不输出任何内容。

    macOS将图像数据存储在剪贴板的何处?是否有类似于pbpaste的方法从命令行访问它?

    2 回复  |  直到 4 年前
        1
  •  8
  •   Community Reversed Engineer    7 年前

    Jeff utility 是用来将图形粘贴到PNG的。

        2
  •  0
  •   JWWalker    14 年前

    man pbpaste 表示它只查找纯文本、富文本或封装的postscript。我不知道有哪个命令可以处理更一般的粘贴板数据,但编写一个可能并不困难。

        3
  •  0
  •   sytech    4 年前

    对于任何想在剪贴板中存储任意二进制数据的人来说,这似乎并不实用。在某种程度上,我相信是因为 handful of types 粘贴板接受。它们都不适用于任意未格式化的数据。

    你似乎可以在粘贴板上撒谎,将任意数据放入一种非字符串类型中,比如, PDF pasteboardType 然后从剪贴板读取相同的数据。

    使用Python pasteboard

    import secrets
    data = secrets.token_bytes(100) # generate random bytes
    import pasteboard
    pb = pasteboatd.Pasteboard()
    # set the data to the pasteboard
    pb.set_contents(data, pasteboard.PDF)
    # get the contents back, same as before
    pb.get_contents(pasteboard.PDF) == data # True