pygameでpngファイルのロードに失敗したことに対応
- エラー内容
$ /usr/local/bin/python3 draw_image_subregion2.py
Traceback (most recent call last):
File "draw_image_subregion2.py", line 47, in
main()
File "draw_image_subregion2.py", line 13, in main
strip = pygame.image.load("strip.png")
pygame.error: File is not a Windows BMP file
- エラーが発生したpythonのコード
pygame.image.load("strip.png")
- 対応内容
- libpng(pythonからpngファイルにアクセスする際に使われるライブラリ)を更新
$ brew upgrade libpng
==> Upgrading 1 outdated package, with result:
libpng 1.6.34
==> Upgrading libpng
==> Downloading https://homebrew.bintray.com/bottles/libpng-1.6.34.high_sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring libpng-1.6.34.high_sierra.bottle.tar.gz
/usr/local/Cellar/libpng/1.6.34: 26 files, 1.2MB - anacondaのpipではなく、/usr/local/bin に単体でインストールしたpythonパッケージのpipを使って、pygameをアンインストール。
$ /usr/local/bin/pip3 uninstall pygame
- 再インストール
$ /usr/local/bin/pip3 install pygame
- 正常に動いた。
$ /usr/local/bin/python3 draw_image_subregion2.py
- libpng(pythonからpngファイルにアクセスする際に使われるライブラリ)を更新