【问题标题】:Python Kivy Critical Text Error. Unable to Find any valuable Text providerPython Kivy 严重文本错误。无法找到任何有价值的文本提供者
【发布时间】:2019-02-21 13:26:09
【问题描述】:

您好,我最近开始使用 Python 编程,我想从 Gui (Kivy) 开始,但我遇到了一堆错误。

我通过 pip 安装了 Kivy,没有任何问题,但是当我运行一个基本的应用程序时,所有的崩溃。 我的代码:

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 上还有其他类似的问题,但我的问题没有答案。

【问题讨论】:

  • 您是否按照these 安装说明进行操作?请注意,有几个要求必须与 kivy 本身一起安装。
  • 我刚刚检查了我错过了一个命令。如果您没有编写该命令,我可能会停止 python。对于其他有同样问题的人。您必须通过命令行执行它。

标签: python kivy


【解决方案1】:

sdl2 应该已经包含在您的安装中。你的问题主要出在这一行:

pil - ModuleNotFoundError: No module named 'PIL'

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

我之前在自己的一个项目中看到过这个错误。试试这个:

pip install Pillow

这是可选的,但如果您决定也使用 pygame,pygame 可以作为 [Text] AND [Window] 的源。 “img_pygame”也将被添加为 [Image] 的提供者。我将它用于我的 kivy android 应用程序。

pip install pygame

您必须导入这些。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-21
    • 2023-02-06
    • 1970-01-01
    • 2017-10-28
    • 2021-10-01
    • 1970-01-01
    • 2017-04-07
    • 2019-09-08
    相关资源
    最近更新 更多