public async Task <string> CompressDataUriAsync(string dataUri) { string mimeType = FileHelpers.GetMimeTypeFromBase64(dataUri); string extension = FileHelpers.GetExtension(mimeType); if (!IsFileSupported("file." + extension)) { return(dataUri); } string temp = Path.Combine(Path.GetTempPath(), _dataUriPrefix + Guid.NewGuid() + "." + extension); bool isFileSaved = FileHelpers.SaveDataUriToFile(dataUri, temp); if (isFileSaved) { await CompressFilesAsync(temp); string base64 = FileHelpers.ConvertToBase64(temp); File.Delete(temp); return(base64); } return(dataUri); }