Beispiel #1
0
        /// <summary>
        /// Method to save image of base64 - SS
        /// </summary>
        /// <param name="fileDetail">base64 images and folder name</param>
        /// <returns>list of file path</returns>
        public List <string> UploadBlobDataAsync(Base64ImageType fileDetail)
        {
            List <string> filePaths          = new List <string>();
            var           uploadFolder       = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", "Image-Storage");
            var           foldersInDirectory = Directory.GetDirectories(uploadFolder).ToList();

            if (!foldersInDirectory.Any(x => x == fileDetail.FolderName))
            {
                Directory.CreateDirectory(Path.Combine(uploadFolder, fileDetail.FolderName));
                Directory.CreateDirectory(Path.Combine(uploadFolder, fileDetail.FolderName, fileDetail.SubFolderName));
            }
            else
            {
                var subFoldersInDirectory = Directory.GetDirectories(Path.Combine(uploadFolder, fileDetail.FolderName)).ToList();
                if (!subFoldersInDirectory.Any(x => x == fileDetail.SubFolderName))
                {
                    Directory.CreateDirectory(Path.Combine(uploadFolder, fileDetail.FolderName, fileDetail.SubFolderName));
                }
            }
            foreach (var file in fileDetail.Images)
            {
                if (!string.IsNullOrEmpty(file))
                {
                    filePaths.Add(ConvertBase64ToImageAndSave(file, fileDetail.FolderName, fileDetail.SubFolderName));
                }
            }
            return(filePaths);
        }
Beispiel #2
0
        /// <summary>
        /// 获取Base64字符串前缀
        /// </summary>
        /// <param name="type">图片类型</param>
        /// <returns></returns>
        private string GetBase64StringPrefix(Base64ImageType type)
        {
            switch (type)
            {
            case Base64ImageType.Gif:
                return("data:image/gif;base64,");

            case Base64ImageType.Jpeg:
                return("data:image/jpeg;base64,");

            case Base64ImageType.Png:
                return("data:image/png;base64,");

            case Base64ImageType.XIcon:
                return("data:image/x-icon;base64,");
            }
            throw new NotImplementedException($"未知图片类型 : {type}");
        }
Beispiel #3
0
 /// <summary>
 /// 转换成Base64字符串,并附带前缀
 /// </summary>
 /// <param name="type">图片类型</param>
 /// <returns></returns>
 public string ToBase64String(Base64ImageType type) => $"{GetBase64StringPrefix(type)}{ToBase64String()}";
Beispiel #4
0
 /// <summary>
 /// 转换成Base64字符串,并附带前缀
 /// </summary>
 /// <param name="type">图片类型</param>
 /// <returns></returns>
 public string ToBase64String(Base64ImageType type)
 {
     return($"{GetBase64StringPrefix(type)}{ToBase64String()}");
 }
 public Base64Image(Base64ImageType type, string data)
 {
     Type = type;
     Data = data;
 }