macOS 中的二进制(图像)数据剪贴板
当我将内容复制到剪贴板时,我可以将它们转储到控制台窗口中或使用以下命令重定向到文件:
pbpaste > 但是,
如果我右键单击图像并将其复制到浏览器中,则尝试:
pbpaste > out.jpg
没有输出任何内容。
macOS 将剪贴板中的图像数据存储在哪里?有什么方法可以从命令行访问它,类似于 pbpaste?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
回答来自 Jeff 一个 实用程序 是编写的目的是让您将图形粘贴到 PNG 中。
In response to a question from Jeff a utility was written to let you paste graphics to a PNG.
man pbpaste
表示它只查找纯文本、富文本或封装的 postscript。我不知道有什么命令可以处理更通用的粘贴板数据,但编写一个命令可能并不难。man pbpaste
says that it only looks for plain text, rich text, or encapsulated postscript. I don't know any command that handles more general pasteboard data, but it probably wouldn't be hard to write one.对于任何寻找如何在剪贴板中存储任意二进制数据的人来说,这似乎可能不切实际。在某种程度上,我相信是因为粘贴板只接受少数类型。它们都不适合任意未格式化的数据。
您似乎可以对粘贴板撒谎,并将任意数据放入非字符串类型之一,例如 PDF PasteboardType 并稍后从剪贴板读回相同的数据。
使用 Python pasteboard 包(一个带有 Python 绑定的小型 Objective-C 程序)可以演示:
For anyone looking for how to store arbitrary binary data in the clipboard, it seems this may not be practical. In part, I believe because there's only a handful of types the pasteboard accepts. None of which are suitable for arbitrary unformatted data.
You can seemingly lie to the pasteboard and place arbitrary data into one of the non-string types like, PDF pasteboardType and later read the same data back from the clipboard.
Using the Python pasteboard package, (a small Objective-C program with Python bindings) this can be demonstrated: