今天遇到須要裁剪base64字符串的PNG圖片,並返回base64格式字符串的任務,搗鼓半天。
裁剪代碼以下:python
def deal_inspect_img(base64_str): """裁剪base64字符串的圖片""" base64_data = re.sub('^data:image/.+;base64,', '', base64_str) byte_data = base64.b64decode(base64_data) # BytesIO 對象 image_data = io.BytesIO(byte_data) # 獲得Image對象 img = Image.open(image_data) # 裁剪圖片(左,上,右,下),笛卡爾座標系 img2 = img.crop((962, 485, 1897, 810)) # BytesIO 對象 imgByteArr = io.BytesIO() # 寫入BytesIO對象 img2.save(imgByteArr, format='PNG') # 得到字節 imgByteArr = imgByteArr.getvalue() base64_str = base64.b64encode(imgByteArr) return base64_str
若是須要保存code
base64_str = 'xxxxxxxxxxxxxxxxxxxxxxx' imgdata = base64.b64decode(base64_str) with open('iss.png', 'wb') as f: f.write(imgdata)