Advertisement
Guest User

Write image to Windows clipboard in python with PIL and win32clipboard

a guest
Apr 4th, 2012
867
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. import win32clipboard
  2. from PIL import Image
  3.  
  4. def send_to_clipboard(clip_type, data):
  5. win32clipboard.OpenClipboard()
  6. win32clipboard.EmptyClipboard()
  7. win32clipboard.SetClipboardData(clip_type, data)
  8. win32clipboard.CloseClipboard()
  9.  
  10. clip_type = win32clipboard.CF_BITMAP
  11. filepath = 'c:\temp\image.jpg'
  12.  
  13. im = Image.open(filepath)
  14. data = im.tobitmap() # fails with valueerror: not a bitmap
  15. # data = im.tostring() runs, but receiving programs can't read the results
  16. send_to_clipboard(clip_type, data)
  17.  
  18. from cStringIO import StringIO
  19. import win32clipboard
  20. from PIL import Image
  21.  
  22. def send_to_clipboard(clip_type, data):
  23. win32clipboard.OpenClipboard()
  24. win32clipboard.EmptyClipboard()
  25. win32clipboard.SetClipboardData(clip_type, data)
  26. win32clipboard.CloseClipboard()
  27.  
  28. filepath = 'image.jpg'
  29. image = Image.open(filepath)
  30.  
  31. output = StringIO()
  32. image.convert("RGB").save(output, "BMP")
  33. data = output.getvalue()[14:]
  34. output.close()
  35.  
  36. send_to_clipboard(win32clipboard.CF_DIB, data)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement