我知道這是一個古老的問題,但我想給我的答案,以防人們遇到與我一樣的問題。
Christoph Gohlke的作品在工作時非常棒。 但是,對於我的win7機器與python 2.7和最重要的是64位,沒有預編譯二進制PNG支持(zlib支持)。該頁面上的Pillow 64位二進制文件在easy_install上失敗,無法安裝在我的機器上。
所以,如果你想解決這個問題,二進制文件不起作用,你需要用zlib支持來構建你自己的Pillow。要做到這一點,你需要下載最新的Pillow源碼。 修改setup.py的ZLIB_ROOT行說:
ZLIB_ROOT = './zlib'
現在,你必須建立Win64中位zlib的爲好,這是棘手的部分。 從他們的網站下載最新的zlib源代碼(我在1.2.5/1.2.8上測試過)。 打開64位視覺工作室命令提示符(非常重要) 我的命令提示符被稱爲VS2012 x64交叉工具命令提示符。
轉到zlib的源代碼目錄,然後運行:
nmake -f win32/Makefile.msc
如果它不工作的嘗試:
nmake -f win32/Makefile.msc AS=ml64 LOC="-DASMV -DASMINF" OBJA="inffasx64.obj gvmat64.obj inffas8664.obj"
現在你應該在源目錄中的以下文件:
zlib.h
zconf.h
zutil.h (not sure this is needed)
zlib.lib
zdll.lib
將它們複製到Pillow源目錄中,放入名爲「zlib」的目錄中 編譯枕頭使用"python setup.py build_ext -i"
使用安裝枕頭"python setup.py install"
枕頭現在應該支持ZLIB(png)。 如果您有一些較舊的Pillow/PIL安裝,您可能需要手動將_imaging.pyd和_imagingmath.pyd複製到python或虛擬環境的軟件包安裝文件夾中,以確保您擁有新編譯的軟件包。
你現在可以導入_imaging,你有png的支持。
您也可以用相同的方式添加Libjpeg,如果需要,手動編譯它。
希望這可以幫助任何遇到此問題的人。
謝謝,我使用了你提到的二進制文件,它現在可以工作。 –
這個二進制構建正是我所需要的。謝謝! –