Как скопировать картинку с холста в буфер обмена?
Вопрос
У меня есть холст Tkinter и несколько картинок с текстом. Есть ли простой способ скопировать его в буфер обмена?
Решение
Вы можете использовать .postscript
. холста, чтобы получить представление содержимого в формате Encapsulated PostScript (EPS). Затем используйте ` привязки Python ImageMagick ( PythonMagick или PythonMagickWand ) преобразовать EPS в расширенный метафайл Windows (EMF). Наконец, скопируйте его в буфер обмена (например, используя решение nosklo ) с CF_ENHMETAFILE буфером обмена формат. р>
Другие советы
Чтобы использовать буфер обмена Windows, вы должны преобразовать данные изображения в формат, принятый win api. Затем просто используйте эту функцию:
import win32clipboard
def send_to_clibboard(clip_type, data):
win32clipboard.OpenClipboard()
win32clipboard.EmptyClipboard()
win32clipboard.SetClipboardData(clip_type, data)
win32clipboard.CloseClipboard()
Где clip_type
может быть win32clipboard.CF_BITMAP
, win32clipboard.CF_TIFF
или многими другими.