如何解决在 Python 中,我无法使用 PIL 正确打开一些 png 图像
from PIL import Image
x = Image.open('png/x-tictactoe.png')
o = Image.open('png/o-tictactoe.png')
print(x)
print(o)
第一行以png格式正常打开图片,第二行自动以jpeg格式打开图片
输出如下:
"C:\Users\Delfino De Chicchis\PycharmProjects\TicTacToe\venv\Scripts\python.exe" "C:/Users/Delfino De Chicchis/PycharmProjects/TicTacToe/test.py"
<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=860x898 at 0x27FA46330A0>
<PIL.JpegImagePlugin.JpegImageFile image mode=L size=880x1004 at 0x27FA67E8C10>
Process finished with exit code 0
我只想将两个文件都打开为 png,以便使用 RGBA 制作透明背景。
有人可以帮我吗?
解决方法
文件的扩展名不一定是其内容的正确指示符 - 它只是一个 Windows 概念。大多数文件的开头都有一个 recognisable “幻数”,或“签名”。
因此,如果您没有本地安装的十六进制,请尝试以十六进制转储 “不高兴” PNG 文件的内容,或者在 hexedit 等在线十六进制编辑器中打开它可用的工具。
对于 PNG,您应该会看到如下所示的有效 PNG signature:
89 50 4e 47 0d 0a 1a 0a ... (in ASCII 50="P",4e="N",47="G")
对于 JPEG,您应该看到一个有效的 JPEG signature,如下所示:
ff d8 ff ...
,
使用此 display(x) and display(o)
如果不起作用,请检查目录。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。