我想在 Canvas 上实现截图,但是ImageGrab.grab()
函数是基于绝对坐标的,所以它保存的图像不是我截取的图像。如何将 Canvas 的相对坐标转换为绝对坐标?我使用了 canvasx()
但它不起作用。
screen = (min(sbox[0],ebox[0]),min(sbox[1],ebox[1]),max(sbox[0],ebox[0]),max(sbox[1],ebox[1]))
img = ImageGrab.grab(screen)
最佳答案
您可以使用winfo_rootx和 winfo_rooty获取屏幕坐标中小部件左上角的 x,y。将其添加到相对于窗口的坐标以获得绝对坐标。
关于Python:如何在 Tkinter 中将相对坐标转换为绝对坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23633035/