将剪贴板设置为图像 - pbcopy

时间:2011-08-02 22:20:07

标签: macos bash clipboard pbcopy

如何使用pbcopy将图像设置为剪贴板?

这不起作用:

cat image.png | pbcopy

3 个答案:

答案 0 :(得分:8)

更新了答案

您可以在命令行中使用Applescript将JPEG图像实际放入剪贴板:

osascript -e 'set the clipboard to (read (POSIX file "/Users/mark/Desktop/a.jpg") as JPEG picture)'

然后,您可以使用以下方法检查剪贴板上的内容:

osascript -e 'clipboard info'

JPEG picture, 175960, «class 8BPS», 641904, GIF picture, 124637, «class jp2 », 102086, TIFF picture, 1481282, «class PNGf», 412940, «class BMP », 1477734, «class TPIC», 609835

并将图像粘贴到文档中,使用通常的 -V。

原始答案

可以执行此操作而无需编译任何其他软件,只需使用OS X中提供的工具。基本上,剪贴板无法存储二进制文件,因此您需要uuencode将二进制图像转换为简单的ASCII数据,如下所示:

# Copy image to clipboard
uuencode SomeFile.jpg - | pbcopy
回到另一条路时,

uudecode

# Paste from clipboard to image file
pbpaste | uudecode -o AnotherFile.jpg

答案 1 :(得分:7)

如上所述,这不适用于pbcopy,但您可以编写一个Objective-c程序来执行此操作:http://www.alecjacobson.com/weblog/?p=3816。然后你可以发出:

cat image.png | impbcopy -

答案 2 :(得分:3)

来自文档:

输入作为ASCII数据放在粘贴板中,除非它以Encapsulated PostScript(EPS)文件头或RTF格式文件头开头,在这种情况下,它作为其中一种数据类型放在粘贴板中。

听起来并不支持图像数据,所以它不起作用。