示例#1
0
        private void CreateDynamicImages(Dictionary <string, string>[] arrValues, ContentAttribute[] fullAttrs)
        {
            foreach (var dynImageAttr in fullAttrs.Where(n => n.RelatedImageId.HasValue))
            {
                if (dynImageAttr.RelatedImageId == null)
                {
                    continue;
                }

                var imageAttr  = fullAttrs.Single(n => n.Id == dynImageAttr.RelatedImageId.Value);
                var attrDir    = GetDirectoryForFileAttribute(imageAttr.Id);
                var contentDir = GetContentLibraryDirectory(imageAttr.SiteId, imageAttr.ContentId);
                foreach (var article in arrValues)
                {
                    if (article.TryGetValue(imageAttr.Name, out var image))
                    {
                        var info = new DynamicImageInfo
                        {
                            ContentLibraryPath = contentDir,
                            ImagePath          = attrDir,
                            ImageName          = image,
                            AttrId             = dynImageAttr.Id,
                            Width    = dynImageAttr.DynamicImage.Width,
                            Height   = dynImageAttr.DynamicImage.Height,
                            Quality  = dynImageAttr.DynamicImage.Quality,
                            FileType = dynImageAttr.DynamicImage.Type,
                            MaxSize  = dynImageAttr.DynamicImage.MaxSize
                        };


                        DynamicImageCreator.CreateDynamicImage(info);
                        article[dynImageAttr.Name] = DynamicImage.GetDynamicImageRelUrl(info?.ImageName, info.AttrId, info.FileType);
                    }
                }
            }
        }
示例#2
0
 public void CreateDynamicImage(DynamicImageInfo image)
 {
     new DynamicImage(image, _fs).Create();
 }
 public DynamicImage(DynamicImageInfo info, IFileSystem fs)
 {
     _info = info;
     _fs   = fs;
 }
示例#4
0
 public DynamicImage(DynamicImageInfo info, IFileSystem fileSystem)
 {
     _info       = info;
     _fileSystem = fileSystem;
 }
 public void CreateDynamicImage(DynamicImageInfo image)
 {
 }