gpt4 book ai didi

linux - GNOME 剪贴板是否具有与数据关联的 MIME 类型?

转载 作者:太空宇宙 更新时间:2023-11-04 11:39:47 25 4
gpt4 key购买 nike

我知道在 Linux 中有几种类型的selection:primarysecondary,和clipboard,我对待前两个作为短期剪贴板,clipboard 作为长期剪贴板。我对吗?

现在,由于 primary/secondary 选择是纯文本的,我想将图像复制到 long-term 剪贴板,我不知道是否有与之关联的 MIME 类型。因为 Screen Capture 能够将屏幕截图复制到剪贴板,所以我猜有一些元数据来描述它的图像格式。但是像xsel 这样的命令并没有给出操作图像剪贴板数据的任何选项。既不支持将图像文件复制到剪贴板,也不支持将图像从剪贴板转储到文件。

google了一下,发现Python/Gtk中有一些支持:

import pygtk
pygtk.require('2.0')
import gtk
import os
def copy_image(f):
assert os.path.exists(f), "file does not exist"
clipboard = gtk.clipboard_get()
img = gtk.Image()
img.set_from_file(f)
clipboard.set_image(img.get_pixbuf())
clipboard.store()

我自己没有尝试过,因为我不熟悉 Python,但看起来至少有一些程序支持图像剪贴板。

这里有一个问题,因为我猜测 GNOME 中的剪贴板可能没有 MIME 类型,所以大多数 Gnome 应用程序是否共享相同的图像格式约定?

而且,如果我想使用图像剪贴板进行编程以在不同应用程序之间共享图像,例如一个需要 8 位索引位图,另一个需要 24 位 RGB 位图,我应该引用哪些文档?

最佳答案

Gnome 中的复制和粘贴执行协商的数据传输,一个提供可用于数据的格式列表,另一个选择其首选类型。 Gtk+ 等 API 通过仅为 GdkPixbuf 提供接口(interface)并自行管理格式传输来简化这一过程。

通常你不想要原始位图传输,因为它对于大图像来说会很慢,PNG 压缩很好但是说粘贴到 OO.o 只支持 JPEG 压缩,你通常不需要非照片对象.这会导致从 The Gimp 到 Writer 的图像粘贴速度变慢。

http://library.gnome.org/devel/gtk/stable/gtk-Clipboards.html

关于linux - GNOME 剪贴板是否具有与数据关联的 MIME 类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4486376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com