Mac下python初学之Image库(PIL)

Mac下python 使用Image库

安装PIL,下载http://www.pythonware.com/products/pil/

解压PIL源码包,阅读README知道需要使用python setup.py install 命令来编译安装。
当然,通常第一次是不会通过的,一般是一些库文件找不到,如X11lib之类。

修改setup.py:

1、36行起

TCL_ROOT = None
JPEG_ROOT = JPEG库目录
ZLIB_ROOT = PNG和ZLIB库目录
TIFF_ROOT = TIFF库目录
FREETYPE_ROOT = FreeType库目录
LCMS_ROOT = None

这里重点是JPEG和zlib库的目录。

a)zlib

Mac下大多的开发库都不在usr目录下,如果你安装了Xcode,那么:

ZLIB_ROOT = libinclude("/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr")

否则你需要安装相应的zlib库,然再加上你的目录路径即可。

b) Jpeg
Jpeg库需要自行安装,下载Jpeg资源包后,解压进入执行./configure 顺利的话即生成makefile,再sudo make install,将会安装在/usr/local/lib下载。
然后添加路径到PIL的setup.py中:

JPEG_ROOT = "/usr/local/lib"

2、大约210行左右

在这几行之后:
add_directory(library_dirs, "/usr/local/lib")
add_directory(include_dirs, "/usr/local/include")
add_directory(library_dirs, "/usr/lib")
add_directory(include_dirs, "/usr/include")

添加相关库目录:
add_directory(library_dirs, "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib")
add_directory(include_dirs, "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers")
add_directory(include_dirs, "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include")

然后再编译安装即可。

另外,如果没设置png与jpeg库目录,PIL也能装成功但在使用过程中会找不到解码器。想要判断png和jpeg是否支持,使用以下方法:

python selftest.py

如果看到

--- JPEG support ok

--- ZLIB (PNG/ZIP) support ok

说明这两个库的配置是正确。

最后可以写个简单的test.py脚本来测试一下:

import Image
im = Image.open("/不要写~的路径/Desktop/y.jpg")
im.save("/不要写~的路径/Desktop/x.jpg")

时间: 2024-10-30 11:55:56

Mac下python初学之Image库(PIL)的相关文章

[转]mac下Python升级到指定的版本

以2.7升级到3.3为例1.删除原版本a)删除系统库中的版本sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7 b)删除Current版本sudo rm /System/Library/Frameworks/Python.framework/Versions/Currentc)删除/usr/bin目录下的python相关文件find . -name "py*" -print| xargs rm -rf

Mac下Python折腾笔记

这几天一直折腾Python,试图修改系统自带的Python,上一篇博客的方式确实修改了系统默认的Python,但是带来一个结果svn git Xcode都挂了,因为库找不到. 后来在Mac下编译Python,结果确实也搞定了,但是各种库的编译参数太复杂,最终还是失败了. 最后一种方法,就是保留系统默认Python /System/Library/Frameworks/Python.framework/Versions/2.7 然后从python官网下载安装包进行安装 /Library/Frame

Mac 下 Python os.listdir 出现 invalid literal for int() with base 10 错误

因为 Mac 下的 .DS_Store 也会包含进去 解决方法: def listdirInMac(path): os_list = os.listdir(path) for item in os_list: if item.startswith('.') and os.path.isfile(os.path.join(path, item)): os_list.remove(item) return os_list

mac下python安装和scrapy安装

mac自带python和pip等工具,但是在使用安装scrapy时,报了一些错,因为对操作系统一些核心目录(比如/Library)没有可操作权限,mac有自己的一些权限控制程序(非sudo chmod能改变),所以干脆重新安装python,这样新安装的python就会在/usr目录里面,而不是系统自带的/Library下面./usr下面是我们有任何权限操作的. 1.我是利用homebrew的方法来安装,当然,也可以直接登录python官网下载安装,个人安装喜好. 2.执行brew install

在MAC下 Python+Django+mysql配置

今天在搭建Django+mysql环境的时候遇到了一点问题,记录下来. 安装环境:OS X 10.10操作系统,Python 2.7. MySQLdb其实包含在MySQL-python包中,因此无论下载还是在pip中search,都应该是搜寻MySQL-python. 以下将说明MySQLdb两种常见的安装方式: 下载安装或者pip安装MySQL-python. 源码安装 下载MySQLdb源码 下面是1.2.5的版本 https://pypi.python.org/packages/sourc

Mac下svn问题——“.a”(静态库)文件无法上传解决

“.a”(静态库)文件无法上传(svn工具) 网上查询了一下,说是Xcode自带的svn和Versions以及一些其它工具都不能上传".a"文件. 解决办法如下: 1.打开终端,输入cd,空格,然后将需要上传的.a文件所在的文件夹(不是.a文件)拖拽到终端(此办法无需输入繁琐的路径,快捷方便) ,回车: 2.之后再输入如下命令:svn add libGoogleAnalytics.a,回车: 3.之后会出现:A  (bin)  libGoogleAnalytics.a 表示添加成功,打

Mac 下 Python 安装目录

easy_install 自动下载的目录 /Library/Python/版本/site-packages/ 执行文件目录 /usr/bin/python

Python图像处理库PIL中图像格式转换(一)

在数字图像处理中,针对不同的图像格式有其特定的处理算法.所以,在做图像处理之前,我们需要考虑清楚自己要基于哪种格式的图像进行算法设计及其实现.本文基于这个需求,使用python中的图像处理库PIL来实现不同图像格式的转换. 对于彩色图像,不管其图像格式是PNG,还是BMP,或者JPG,在PIL中,使用Image模块的open()函数打开后,返回的图像对象的模式都是"RGB".而对于灰度图像,不管其图像格式是PNG,还是BMP,或者JPG,打开后,其模式为"L". 通

Mac os Python 安装 chardet模块

1. chardet模块 Python在处理字符串问题,常常会遇到字符串编码的问题.chardet是一个非常优秀的编码识别模块. 能够识别的格式有: ASCII, UTF-8, UTF-16 (2 variants), UTF-32 (4 variants) Big5, GB2312, EUC-TW, HZ-GB-2312, ISO-2022-CN (Traditional and Simplified Chinese) EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP