Python截图到base64

时间:2017-01-07 23:31:56

标签: python wxpython wxwidgets

以下是我截取屏幕截图的方式:

import wx

app = wx.App(False)
s = wx.ScreenDC()
w, h = s.Size.Get()
b = wx.EmptyBitmap(w, h)
m = wx.MemoryDCFromDC(s)
m.SelectObject(b)
m.Blit(0, 0, w, h, s, 0, 0)
m.SelectObject(wx.NullBitmap)
b.SaveFile("hey.png", wx.BITMAP_TYPE_PNG)

我不想将屏幕截图保存为图像文件" hey.png",我希望将其作为base64字符串。
我的最终目的是打印base64字符串,然后我想手动将它放在html代码中,这里:

<img src="data:image/png;base64,here" />

我该怎么做?提前谢谢。

1 个答案:

答案 0 :(得分:0)

你必须以某种方式获取该文件的字节。这可以通过两种方式完成:

  1. 通过wx API,如果可能的话(我很熟悉API,但如果可能的话,你应该能够查找它)
  2. 保存文件,读取文件,最后删除文件。
  3. 对于实际编码,您可以使用内置的base64 API。请注意,我链接到Python 2 wiki而不是Python 3 wiki,因为根据我的知识,wxPython仅适用于python 2。