国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Linux上安裝Python的PIL和Pillow庫處理圖片的實例教程

2019-11-25 16:42:07
字體:
來源:轉載
供稿:網友

安裝
正常情況,只需

pip install PIL==1.1.7

或者

pip install Pillow==2.9.0

即可。但需留意安裝后的輸出
安裝完成后,需留意輸出:

*** TKINTER support not available*** JPEG support not available*** WEBP support not available*** ZLIB (PNG/ZIP) support not available*** FREETYPE2 support not available*** LITTLECMS support not available

是否有需要但不支持的格式,如果有,需安裝支持的包。以jpg/png/web為例。
依賴庫(library)安裝
首先檢查是否已經安裝

ll /usr/lib/libjpeg.*-rw-r--r-- 1 root root 221942 Jun 30 2010 /usr/lib/libjpeg.a-rw-r--r-- 1 root root  918 Jun 30 2010 /usr/lib/libjpeg.lalrwxrwxrwx 1 root root   17 Mar 21 16:19 /usr/lib/libjpeg.so -> libjpeg.so.62.0.0lrwxrwxrwx 1 root root   17 Jan 10 10:44 /usr/lib/libjpeg.so.62 -> libjpeg.so.62.0.0-rw-r--r-- 1 root root 145048 Jun 30 2010 /usr/lib/libjpeg.so.62.0.0

如果沒有,則需要安裝包
Debian系:

apt-get install libjpeg8-dev for jpgapt-get install zlib1g-dev for pngapt-get install libwebp-dev for webp

RedHat系:

yum install libjpeg-devel libpng-devel libwebp-devel

安裝完成后,還需要手動建立軟鏈接
DEBIAN 7 & Ubuntu14.04:

ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/libln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/libln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/libln -s /usr/lib/x86_64-linux-gnu/libwebp.so /usr/lib

Centos 6.5:

ls -s /usr/lib64/libjpeg.so /usr/libls -s /usr/lib64/libz.so /usr/libls -s /usr/lib64/libwebp.so /usr/lib

重新安裝
以上就緒后,兩種辦法重新安裝:

pip install -I PIL==1.1.7

-I意思是Force reinstall。安裝完成時留意輸出對格式的支持。
或者下載源碼重裝一次,以PIL為例

wget http://effbot.org/downloads/Imaging-1.1.7.tar.gztar -xzvf Imaging-1.1.7.tar.gzcd Imaging-1.1.7python setup.py install

對格式的支持可在源碼目錄下

python selftest.py* TKINTER support not installed―- JPEG support ok―- ZLIB (PNG/ZIP) support ok

如果這里有問題(Debian & Ubuntu沒有,但Centos 6.5有), 需要 python setup.py build_ext -i 然后重試。

批量轉換圖片實現
需求是這樣的,由于現在相機像素都很高,拍出來的照片很大,上傳到網上相冊太慢,于是要先轉下大小,之前都是直接在網上搜圖片處理的軟件,后來想了一下,既然會編程,這種需求完全可以自己動手搞。
Python的圖片處理爽歪歪,幾行代碼搞定,這里用的是pillow庫。
下面上代碼。

#coding=utf-8 from PIL import Image#需要pillow庫 import glob, os in_dir ='tmp_photo'#源圖片目錄 out_dir = in_dir+'_out'#轉換后圖片目錄 percent = 0.4#縮放比例 if not os.path.exists(out_dir): os.mkdir(out_dir)  #圖片批處理 def main():   for files in glob.glob(in_dir+'/*'):     filepath,filename = os.path.split(files)     im = Image.open(files)     w,h = im.size     im = im.resize((int(w*percent), int(h*percent)))     im.save(os.path.join(out_dir,filename))  if __name__=='__main__':   main() 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 佛山市| 仙桃市| 应用必备| 赞皇县| 景宁| 兰西县| 保靖县| 广宗县| 长沙县| 慈利县| 扶沟县| 五莲县| 安塞县| 洛扎县| 梁河县| 格尔木市| 柘荣县| 新沂市| 扬中市| 宽城| 衡阳市| 山西省| 昌乐县| 永善县| 扎赉特旗| 石屏县| 秦皇岛市| 科尔| 鄢陵县| 永泰县| 南通市| 策勒县| 乐山市| 新蔡县| 新津县| 宁城县| 凤冈县| 泾源县| 呼和浩特市| 远安县| 柳河县|