python九宮格圖片的原理

原理
1、用Python制作的九宮格圖像生成器包裝exe文件,用戶無(wú)需部署安裝Python的開(kāi)發(fā)環(huán)境,即可在當(dāng)?shù)剡\(yùn)行該程序,快速生成九宮格圖像。
2、用PIL庫(kù)不斷畫(huà)小區(qū)域,切下來(lái)存儲(chǔ)成新的小圖片。
實(shí)例
假設(shè)每一個(gè)格子的寬和高分別是w、h,那么第row行(從0開(kāi)始計(jì)數(shù)),第col列(從0開(kāi)始計(jì)數(shù))的格子左上角坐標(biāo)和右下角坐標(biāo)分別是(col * w, row * h),(col * w + w, r * h + h)。
t(width / 3) #因?yàn)榕笥讶σ恍蟹?張圖。box_list = []# (left, upper, right, lower)for i in range(0,3):for j in range(0,3):#print((i*item_width,j*item_width,(i+1)*item_width,(j+1)*item_width))box = (j*item_width,i*item_width,(j+1)*item_width,(i+1)*item_width)box_list.append(box)image_list = [image.crop(box) for box in box_list]return image_list#保存圖片def save_images(image_list):index = 1for image in image_list:image.save(str(index) + '.png', 'PNG')index += 1# 點(diǎn)擊按鈕,實(shí)現(xiàn)圖片分割def cTofClicked():file_path=str(entryCd.get()) # 獲取要進(jìn)行分割的圖片路徑image = Image.open(file_path)#image.show()image = fill_image(image)image_list = cut_image(image)save_images(image_list)labelcTof.config(text="九宮格圖片已生,請(qǐng)?jiān)诔绦蛩谀夸洸榭矗?)# 窗體top=tk.Tk()top.title('九宮格圖片生成器')labelcTof=tk.Label(top,text="請(qǐng)輸入要進(jìn)行轉(zhuǎn)換的圖片路徑:",height=4,\width=40,fg="blue")labelcTof.pack()entryCd=tk.Entry(top,text='0') # 文本框,獲取圖片路徑entryCd.pack()label_tip=tk.Label(top,text="請(qǐng)檢查圖片路徑是否輸入正確!",height=2,\width=40,fg="gray")label_tip.pack()btnCal=tk.Button(top,text="點(diǎn)擊生成九宮格圖片",fg="red",bg="yellow",command=cTofClicked) # 點(diǎn)擊回調(diào)函數(shù)btnCal.pack()top.mainloop() # 執(zhí)行主循環(huán)
以上就是python九宮格圖片的原理,希望對(duì)大家有所幫助。
*聲明:本文于網(wǎng)絡(luò)整理,版權(quán)歸原作者所有,如來(lái)源信息有誤或侵犯權(quán)益,請(qǐng)聯(lián)系我們刪除或授權(quán)

評(píng)論
圖片
表情
