gpt4 book ai didi

python - 屏幕截图()给出:ImportError: cannot import name glReadPixels error in kivy

转载 作者:行者123 更新时间:2023-12-01 05:18:56 25 4
gpt4 key购买 nike

要在 kivy 中截取窗口的屏幕截图,我们可以按照文档使用 snapshot(name='screenshot{:04d}.png')

http://kivy.org/docs/api-kivy.core.window.html?highlight=screenshot#kivy.core.window.WindowBase.screenshot

但是当我尝试时出现以下错误:

回溯(最近一次调用最后一次): 文件“D:/Paarth/Google_Drive/Google Drive/Codes/Python/Work/kivy/kivyBasics/Screenshots_SaveImage.py”,第 26 行,位于 MyApp().run() 文件“C:\Kivy-1.8.0-py2.7-win32\Python27\lib\kivy\app.py”,第 766 行,运行中 根= self.build() 文件“D:/Paarth/Google_Drive/Google Drive/Codes/Python/Work/kivy/kivyBasics/Screenshots_SaveImage.py”,第 19 行,构建中 Window.screenshot(name='屏幕截图{:04d}.png') 文件“C:\Kivy-1.8.0-py2.7-win32\Python27\lib\kivy\core\window\window_pygame.py”,第 250 行,屏幕截图 从 kivy.core.gl 导入 glReadPixels、GL_RGBA、GL_UNSIGNED_BYTE 导入错误:无法导入名称 glReadPixels

使用的代码:

import  kivy
kivy.require ( '1.8.0 ' )
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.button import Button
from kivy.core.window import WindowBase
from kivy.core.window import Window


class MyWidget(Widget):
pass

class MyApp(App):
def build(self):
parent = MyWidget()

a = Button(text="hello")
parent.add_widget(a)
Window.screenshot(name='screenshot{:04d}.png')

return parent


if __name__ == '__main__':
MyApp().run()

最佳答案

为了通过恶劣的方式澄清答案,您需要执行以下操作,并将export_to_png包含在您的python文件中。这个

from kivy.graphics import Canvas, Translate, Fbo, ClearColor, ClearBuffers
kv = '''
cameraWidget:
orientation: 'vertical'
Camera:
id: camera
resolution: (640, 480)
play: False
ToggleButton:
text: 'Play'
on_press: camera.play = not camera.play
size_hint_y: None
height: '48dp'
Button:
text: "Take picture"
on_press: root.TakePicture()
height: '48dp'

'''
class cameraWidget(BoxLayout):
def TakePicture(self, *args):
self.export_to_png = export_to_png
self.export_to_png(self.ids.camera, filename='test2.png')

class MyApp(App):
def build(self):
return Builder.load_string(kv)

if __name__ == '__main__':
MyApp().run()

关于python - 屏幕截图()给出:ImportError: cannot import name glReadPixels error in kivy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22755619/

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