[英]Resize/crop image encoded as base64 image string
在我的情況下,有兩種方法可以調整圖像大小/裁剪。
1.案例,調整大小和作物運作良好:
f = Image.open(uploaded_image)
new_width, new_height = 1200, 630
wpercent = (new_width / float(f.size[0]))
hsize = int((float(f.size[1]) * float(wpercent)))
if f.mode != "RGB":
f = f.convert('RGB')
og_img = None
if f.size[0] < new_width:
#upscale
og_img = f.resize((new_width, hsize), Image.BICUBIC)
elif f.size[0] >= new_width:
#downscale
og_img = f.resize((new_width, hsize), Image.ANTIALIAS)
og_img = og_img.crop((0, 0, 1200, 630))
調整大小/裁剪圖像:
在2.情況下,代碼與上面相同,略有變化:
base64_image = str(request.POST.get('base64_image')).split(',')[1]
imgfile = open('/'.join([settings.MEDIA_ROOT, 'test.png' ]), 'w+b')
imgfile.write(decodestring(base64_image))
imgfile.seek(0)
f = Image.open(imgfile)
#.. as above
但調整大小/裁剪的圖像:
為什么它的質量和尺寸都不好? (黑底部分..)我做錯了什么? 我是以錯誤的方式讀取base64字符串嗎?
我找到了一個網站里面有很多有趣的東西。它有2個(有很多)工具可能對你有幫助。第1個工具將圖像轉換為base64,第2個工具縮小圖像尺寸(最多70%保存) 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.