为了账号安全,请及时绑定邮箱和手机立即绑定

Go + Appengine Blobstore,调整图片上传大小

Go + Appengine Blobstore,调整图片上传大小

Go
哔哔one 2021-05-09 10:11:56
我正在努力让自己了解Go + Appengine。我一直在使用Blobstore来存储用户图像上传。无论如何,我可以从BlobStore下载图像并进行操作吗?还是有其他解决方案?的图像LIB是有点限制。我也想将其他格式转换为jpeg。
查看完整描述

2 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

是的,您可以从blobstore中拉出文件并利用Go 1随附的图像包,包括image / drawimage / jpeg。请参阅Go image包以获取概述和image / draw博客文章。假设您已经拥有要处理的图像的BlobInfo,则可以通过将嵌入式BlobKey传递给blobstore.NewReader来获得其原始数据,从而为您提供io.Reader对象。将其传递给png.Decode以获得image.Image。进行所需的任何操作,然后将其保存回blobstore,从blobstore获取Writer.Create并将其交给jpeg.Encode。最后,调用blobstore.Close和.Key以获取新的BlobKey来保存在数据存储区中。

如果您想进行更复杂的操作,可以使用几个纯Go库来与您的应用程序一起上传并与image.Image一起使用。例如,请参阅graphics-goGo中编写Libraries的“ Images and Graphics”部分。


查看完整回答
反对 回复 2021-05-17
  • 2 回答
  • 0 关注
  • 208 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信