public ImageFactory(string presetName, string path)
        {
            _preset = GetPreset(presetName);
            var version = _preset?.Version ?? 0;

            _imageProvider = GetImageProvider(presetName, path, version);
        }
Exemplo n.º 2
0
        public ActionResult GetImageResult(ImageProviderBase imageProvider, ImagePreset preset)
        {
            // TODO: Add sub-routing based on image format
            if (imageProvider.Path.ToLowerInvariant().EndsWith(".png"))
            {
                return(imageProvider.ServeOriginal("image/png"));
            }

            var imagePath = BuildImagePath(imageProvider);

            if (File.Exists(imagePath))
            {
                return(new FilePathResult(imagePath, "image/jpeg"));
            }

            using (var image = imageProvider.GetImage()) {
                GetScaledImage(preset, image, imagePath);
            }

            return(new FilePathResult(imagePath, "image/jpeg"));
        }
Exemplo n.º 3
0
        private static string BuildImagePath(ImageProviderBase imageProvider)
        {
            var eTag = imageProvider.GetETag();

            return($"{ImageCacheLocation}{eTag}.jpg");
        }