Python Kivy严重文本错误。找不到任何有价值的文本提供者

时间:2019-02-21 13:26:10

标签: python kivy

你好,我最近开始用Python编程,我想从Gui(Kivy)开始,但是我有很多错误。

我通过pip安装了Kivy,但没有问题,但是当我运行基本的App时,所有崩溃。 我的代码:

from kivy.app import App
from kivy.uix.button import Button

class TestApp(App):
    def build(self):
        return Button(text='Hello World')

TestApp().run()

我收到此错误消息:

[INFO   ] [Logger      ] Record log in C:\Users\Sebi\.kivy\logs\kivy_19-02-21_41.txt
[INFO   ] [Kivy        ] v1.10.1
[INFO   ] [Python      ] v3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)]
[INFO   ] [Factory     ] 194 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif (img_sdl2, img_pil, img_ffpyplayer ignored)
[CRITICAL] [Text        ] Unable to find any valuable Text provider.
sdl2 - ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.
  File "C:\Users\Sebi\PycharmProjects\CookieClicker\venv\lib\site-packages\kivy\core\__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\Sebi\PycharmProjects\CookieClicker\venv\lib\site-packages\kivy\core\text\text_sdl2.py", line 12, in <module>
    from kivy.core.text._text_sdl2 import (_SurfaceContainer, _get_extents,

pil - ModuleNotFoundError: No module named 'PIL'
  File "C:\Users\Sebi\PycharmProjects\CookieClicker\venv\lib\site-packages\kivy\core\__init__.py", line 59, in core_select_lib
    fromlist=[modulename], level=0)
  File "C:\Users\Sebi\PycharmProjects\CookieClicker\venv\lib\site-packages\kivy\core\text\text_pil.py", line 7, in <module>
    from PIL import Image, ImageFont, ImageDraw

[CRITICAL] [App         ] Unable to get a Text provider, abort.

我知道Stackoverflow上还有其他类似的问题,但是我的问题没有答案。

1 个答案:

答案 0 :(得分:0)

sdl2应该已经包含在您的安装中。您的问题主要在于此行:

pil - ModuleNotFoundError: No module named 'PIL'

“ PIL”是Python Imaging Library的缩写,它处理图像文件格式。如果您的程序不知道如何处理PNG和JPEG等图像,则它将没有GUI。它还负责图像处理,例如拉伸/倾斜,模糊,透明度级别,颜色更改,并且在此示例中可能最重要的是向图像添加文字(也就是您的按钮)。根据其Wikipedia,不赞成使用PIL,而希望使用Pillow。幸运的是,Pillow向后兼容。

在我自己的一个项目中,我曾经见过此错误。试试这个:

pip install Pillow

这是可选的,但是如果您决定也使用pygame,则pygame可以用作[文本]和[窗口]的源。 “ img_pygame”也将添加为[Image]的提供程序。我将其用于我的kivy android应用。

pip install pygame

您将必须导入这些。