public void UpdateThumbnail(MediaImage mediaImage, Size size)
{
if (size.IsEmpty)
{
size = ThumbnailSize;
}
var downloadResponse = storageService.DownloadObject(mediaImage.FileUri);
var imageType = ImageHelper.GetImageType(mediaImage.OriginalFileExtension);
using (var memoryStream = new MemoryStream())
{
if (imageType == ImageType.Raster)
{
CreatePngThumbnail(downloadResponse.ResponseStream, memoryStream, size);
}
else
{
CreateSvgThumbnail(downloadResponse.ResponseStream, memoryStream, size);
}
mediaImage.ThumbnailWidth = size.Width;
mediaImage.ThumbnailHeight = size.Height;
mediaImage.ThumbnailSize = memoryStream.Length;
storageService.UploadObject(new UploadRequest { InputStream = memoryStream, Uri = mediaImage.ThumbnailUri, IgnoreAccessControl = true});
}
}