亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python實現(xiàn)九宮格式的朋友圈功能內(nèi)附“馬云”朋友圈

 更新時間:2019年05月07日 08:29:36   作者:初一丶  
PIL(Python Imaging Library)是一個非常強(qiáng)大的Python庫,但是它支持Python2.X, 在Python3中則使用的是Pillow庫,它是從PIL中fork出來的一個分支。這篇文章主要介紹了用Python搞定九宮格式的朋友圈功能內(nèi)附“馬云”朋友圈 ,需要的朋友可以參考下

PIL(Python Imaging Library)是一個非常強(qiáng)大的Python庫,但是它支持Python2.X, 在Python3中則使用的是Pillow庫,它是從PIL中fork出來的一個分支。提供了非常強(qiáng)大的圖片處理能力,包括存儲、格式轉(zhuǎn)換、圖像處理等操作

 

有時候看到朋友圈的九宮格動態(tài),是不是感覺非常有逼格呢? 今天就用Python來實現(xiàn)九宮格切圖。

先來看幾張效果圖

大致思路分為以下幾步

1.讀取初始照片

2.比較照片的寬高,數(shù)值較大的作為邊長生成一個新的空白圖片

3.將初始圖片粘貼至第二部創(chuàng)建的空白圖片上

4.將圖片進(jìn)行切割

5.保存 

直接上代碼

from PIL import Image

image = Image.open('圖片路徑.jpg')
width, height = image.size

# 高和寬進(jìn)行比較,較大的為新圖片的長度
new_length = height if height > width else width

# 創(chuàng)建一張正方形空圖片,底色為白色,
new_image = Image.new(image.mode, (new_length, new_length), color='white')

# 將要處理的圖片粘貼到新創(chuàng)建的圖片上,居中
if height > width: # 如果高度大于寬,則填充圖片的寬度
 new_image.paste(image, (int((new_length - width) / 2)), 0)
else:
 new_image.paste(image, (0, int((new_length - height) / 2)))

# 朋友圈一排三張圖片因此寬度切割成3份
new_length = int(new_length / 3)
# 用來保存每一個切圖
box_list = []
for i in range(0, 3):
 for j in range(0, 3):
  # 確定每個圖片的位置
  box = (j * new_length, i * new_length, (j + 1) * new_length, (i + 1) * new_length) # (left, top, right, bottom)
  box_list.append(box)
# 通過crop函數(shù)對圖片進(jìn)行切割
image_list = [new_image.crop(box) for box in box_list]

for (index, image) in enumerate(image_list):
 image.save(str(index) + '.png', 'PNG')
print("九宮格圖片生成完畢!")

為了方便使用,通過pyinstaller對腳本進(jìn)行打包成exe文件。

pip3 install pyinstaller

執(zhí)行

pyinstaller -F cut_picture.py

就會在當(dāng)前目錄生成一個dist文件夾,里面就有我們最終需要的exe文件。如何使用呢?只需要在將要切割的圖片重命名為“a.jpg”,放入同級目錄中,雙擊啟動即可

效果圖如下

總結(jié)

以上所示是小編給大家介紹的Python實現(xiàn)九宮格式的朋友圈功能內(nèi)附“馬云”朋友圈,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!

相關(guān)文章

  • 五分鐘帶你搞懂python 迭代器與生成器

    五分鐘帶你搞懂python 迭代器與生成器

    這篇文章主要介紹了python 迭代器與生成器的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-08-08
  • Pycharm集成Gitee的使用方法

    Pycharm集成Gitee的使用方法

    本文主要介紹了Pycharm集成Gitee的使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • Python爬取科目四考試題庫的方法實現(xiàn)

    Python爬取科目四考試題庫的方法實現(xiàn)

    這篇文章主要介紹了Python爬取科目四考試題庫的方法實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • python2 與 python3 實現(xiàn)共存的方法

    python2 與 python3 實現(xiàn)共存的方法

    這篇文章主要介紹了python2 與 python3 實現(xiàn)共存的方法,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07
  • Django獲取model中的字段名和字段的verbose_name方式

    Django獲取model中的字段名和字段的verbose_name方式

    這篇文章主要介紹了Django獲取model中的字段名和字段的verbose_name方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • 探討python??pandas.DataFrame.to_json?函數(shù)

    探討python??pandas.DataFrame.to_json?函數(shù)

    這篇文章主要介紹了python??pandas.DataFrame.to_json?函數(shù)示例詳解,to_json?函數(shù)提供了靈活的參數(shù)設(shè)置,使得?pandas?數(shù)據(jù)框能夠以多種格式導(dǎo)出為?JSON?文件,需要的朋友可以參考下
    2024-07-07
  • numpy多級排序lexsort函數(shù)的使用

    numpy多級排序lexsort函數(shù)的使用

    本文主要介紹了numpy多級排序lexsort函數(shù)的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • Python?queue雙端隊列模塊及用法小結(jié)

    Python?queue雙端隊列模塊及用法小結(jié)

    雙端隊列是一種具有隊列和棧性質(zhì)的線性數(shù)據(jù)結(jié)構(gòu),本文主要介紹了Python?queue雙端隊列模塊及用法小結(jié),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • Selenium啟動Chrome時配置選項詳解

    Selenium啟動Chrome時配置選項詳解

    這篇文章主要介紹了Selenium啟動Chrome時配置選項詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python控制windows剪貼板,向剪貼板中寫入圖片的實例

    python控制windows剪貼板,向剪貼板中寫入圖片的實例

    今天小編就為大家分享一篇python控制windows剪貼板,向剪貼板中寫入圖片的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05

最新評論