diff --git a/src/Umbraco.Infrastructure/Media/ImageSharpImageUrlGenerator.cs b/src/Umbraco.Infrastructure/Media/ImageSharpImageUrlGenerator.cs index ecde6790d2..2b68e4dde0 100644 --- a/src/Umbraco.Infrastructure/Media/ImageSharpImageUrlGenerator.cs +++ b/src/Umbraco.Infrastructure/Media/ImageSharpImageUrlGenerator.cs @@ -56,16 +56,16 @@ namespace Umbraco.Cms.Infrastructure.Media void AddQueryString(string key, params IConvertible[] values) => AppendQueryString(key + '=' + string.Join(",", values.Select(x => x.ToString(CultureInfo.InvariantCulture)))); - if (options.FocalPoint != null) - { - AddQueryString("rxy", options.FocalPoint.Left, options.FocalPoint.Top); - } - if (options.Crop != null) { AddQueryString("cc", options.Crop.Left, options.Crop.Top, options.Crop.Right, options.Crop.Bottom); } + if (options.FocalPoint != null) + { + AddQueryString("rxy", options.FocalPoint.Left, options.FocalPoint.Top); + } + if (options.ImageCropMode.HasValue) { AddQueryString("rmode", options.ImageCropMode.Value.ToString().ToLowerInvariant()); diff --git a/src/Umbraco.Web.Common/DependencyInjection/UmbracoBuilder.ImageSharp.cs b/src/Umbraco.Web.Common/DependencyInjection/UmbracoBuilder.ImageSharp.cs index 6755159fc1..b999c6ef1d 100644 --- a/src/Umbraco.Web.Common/DependencyInjection/UmbracoBuilder.ImageSharp.cs +++ b/src/Umbraco.Web.Common/DependencyInjection/UmbracoBuilder.ImageSharp.cs @@ -27,7 +27,7 @@ namespace Umbraco.Extensions builder.Services.AddImageSharp(options => { - // The configuration is set using ImageSharpConfigurationOptions + // options.Configuration is set using ImageSharpConfigurationOptions below options.BrowserMaxAge = imagingSettings.Cache.BrowserMaxAge; options.CacheMaxAge = imagingSettings.Cache.CacheMaxAge; options.CachedNameLength = imagingSettings.Cache.CachedNameLength; @@ -52,16 +52,7 @@ namespace Umbraco.Extensions }; }) .Configure(options => options.CacheFolder = builder.BuilderHostingEnvironment.MapPathContentRoot(imagingSettings.Cache.CacheFolder)) - // We need to add CropWebProcessor before ResizeWebProcessor (until https://github.com/SixLabors/ImageSharp.Web/issues/182 is fixed) - .RemoveProcessor() - .RemoveProcessor() - .RemoveProcessor() - .RemoveProcessor() - .AddProcessor() - .AddProcessor() - .AddProcessor() - .AddProcessor() - .AddProcessor(); + .AddProcessor(); builder.Services.AddTransient, ImageSharpConfigurationOptions>(); diff --git a/tests/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs b/tests/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs index ce5e62d799..f00225e7b4 100644 --- a/tests/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs +++ b/tests/Umbraco.Tests.UnitTests/Umbraco.Web.Common/ImageCropperTest.cs @@ -358,14 +358,15 @@ namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Web.Common void AddQueryString(string key, params IConvertible[] values) => AppendQueryString(key + '=' + string.Join(",", values.Select(x => x.ToString(CultureInfo.InvariantCulture)))); + if (options.Crop != null) + { + AddQueryString("c", options.Crop.Left, options.Crop.Top, options.Crop.Right, options.Crop.Bottom); + } + if (options.FocalPoint != null) { AddQueryString("f", options.FocalPoint.Top, options.FocalPoint.Left); } - else if (options.Crop != null) - { - AddQueryString("c", options.Crop.Left, options.Crop.Top, options.Crop.Right, options.Crop.Bottom); - } if (options.ImageCropMode.HasValue) { @@ -399,7 +400,7 @@ namespace Umbraco.Cms.Tests.UnitTests.Umbraco.Web.Common if (options.CacheBusterValue != null) { - AddQueryString("r", options.CacheBusterValue); + AddQueryString("v", options.CacheBusterValue); } return imageUrl.ToString();