public async Task SaveThumbAsync(string imgname) { int s = imgname.IndexOf(';'); if (s >= 0) { imgname = imgname.Substring(0, s); } var pos = imgname.IndexOf(_client.BucketName); if (pos > 0) { // remove //static.gmgard.us/ imgname = imgname.Substring(pos + _client.BucketName.Length + 1); var response = await _client.GetObjectAsync(imgname); if (response != null) { using (var img = Image.Load(response)) { img.Mutate(ctx => ctx.Resize(ImageUtil.GetMaxSize(img, 150))); using (var nms = new MemoryStream()) { img.SaveAsJpeg(nms); await _client.PutObjectAsync(imgname.Replace("/upload/", "/thumbs/"), nms); } } } } }