我正在尝试通过 PyQt4 在 Python 脚本的 QImage 对象中使用 JPEG 图像。
脚本本身完美运行,图像加载并且可以被操纵和渲染等等。但是,当我尝试用 py2exe“编译”这个脚本时,除了 JPEG 图像之外,一切正常。用等效的PNG替换它,但由于我的程序从网上下载图像,它们并不总是PNG格式,我不能用另一个库将它们全部转换。
我发现 QImage 的 JPEG 图像支持以及其他图像格式是由 \qt\plugins\imageformats 目录中的一些 DLL 提供的(它们被称为 qjpeg4.dll 和 qjpeg4d.dll)。我想我需要在我的可执行文件中以某种方式使用它们,但我不知道如何。我试过简单地将它们复制到我的 exe 目录,没有运气。如此处所示,我已尝试将这些文件作为 data_files 包含在 setup.py 脚本中,但没有运气(看起来它所做的只是将这些文件复制到 exe 的目录中,因此无论如何手动复制它们并没有改变)。
我敢肯定有一些应用程序使用 PyQt 和 JPEG 图像,他们是怎么做到的?这似乎是一项微不足道的任务,但我现在坚持下去。
另外,我希望我的应用程序是跨平台的(为什么还要用 Python 编码?),我希望在为 OS X 或 Linux 打包时不会遇到这样的打包问题(这不是唯一的问题)。我会吗?