PythonGUI工具 圖片大小轉換

cslience發表於2018-03-19

需求:公司系統圖片系統匯入商品圖片有格式大小要求350x550畫素大小,因為手工的去更改的比較麻煩工作量大,

           所以就想辦法用Python做一個桌面小工具批量的進行圖片尺寸大小處理,一勞永逸了。

功能比較簡單:1、找到需求修改圖片的目錄

                        2、改變圖片大小儲存到新的目錄中


核心程式碼:

	'''編輯圖片尺寸 =圖片、輸出位置'''
	def cut_pic_size(self,h,w,inputFile,outputPath):
		#開啟圖片
		img = Image.open(inputFile)
		#重畫圖片大小
		(x,y) = img.size
		h = h if h<y else y
		w = x if w<x else x
		dest = img.resize((h,w),Image.ANTIALIAS)
		#儲存圖片到本地
		outputFile = outputPath+os.sep+inputFile.split('\\')[-1]
		dest.save(outputFile)
		self.txt2.insert(END, outputFile + ' 轉換完成\n')

	def cut_p(self,inputPath,outputPath):
		if os.path.exists(inputPath) == False:
			messagebox.showerror(title='友情提示', message='請選擇正確的資料夾')
		else:
			if os.path.exists(outputPath) == False:
				os.makedirs(outputPath)
			self.txt2.delete(1.0,END)
			self.txt2.insert(1.0,' '+time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())+'\n')
			self.txt2.insert(END,'+++++++++++開始切割圖片+++++++++++\n')
			for fileName in os.listdir(inputPath):
				inputFile = os.path.join(inputPath,fileName)
				if os.path.isfile(inputFile) and os.path.splitext(inputFile)[1]=='.jpg':
					self.cut_pic_size(350,550,inputFile,outputPath)
				else:
					continue
			self.txt2.insert(END,'+++++++++++所有圖片已經切割完成+++++++++++\n')


相關文章