/// <summary> /// Builds the relative url for the specified image. /// </summary> public string BuildUrl(string virtualPath, int?width, int?height) { if (string.IsNullOrWhiteSpace(virtualPath)) { throw new ArgumentException(nameof(ImageStorageProviderLocalWebsite), new ArgumentException(nameof(BuildUrl), new ArgumentNullException(nameof(virtualPath)))); } var builder = new ImageUrlBuilder(); if (width.HasValue && height.HasValue) { builder.Resize(i => i.Dimensions(width.Value, height.Value)); } else if (width.HasValue || height.HasValue) { if (width.HasValue) { builder.Resize(i => i.Width(width.Value)); } if (height.HasValue) { builder.Resize(i => i.Height(height.Value)); } } else { builder.Cache(CacheOptions.Always); } builder.Resize(i => i.Crop()); return(builder.BuildUrl(virtualPath)); }
/// <summary> /// Generates an image URI using the source <param name="imageUri"/> and <see cref="ImageResizer.FluentExtensions.ImageUrlBuilder"/> instance. /// </summary> /// <param name="imageUri">The source image URI.</param> /// <param name="builder">A <see cref="ImageResizer.FluentExtensions.ImageUrlBuilder"/> instance to use for generating the image URI.</param> /// <returns>The generated image URI.</returns> public virtual string GetImageUrl(string imageUri, ImageUrlBuilder builder) { Ensure.Argument.NotNullOrEmpty(imageUri, "imageUri"); Ensure.Argument.NotNull(builder, "builder"); return(builder.BuildUrl(imageUri)); }
public static string ImageUrl(this UrlHelper url, string imagePath, ImageUrlBuilder builder) { if (string.IsNullOrEmpty(imagePath)) throw new ArgumentNullException("imagePath"); if (builder == null) throw new ArgumentNullException("builder"); if (VirtualPathUtility.IsAppRelative(imagePath)) imagePath = VirtualPathUtility.ToAbsolute(imagePath); return builder.BuildUrl(imagePath); }
public static string ImageUrl(this UrlHelper url, string imagePath, ImageUrlBuilder builder) { if (string.IsNullOrEmpty(imagePath)) { throw new ArgumentNullException("imagePath"); } if (builder == null) { throw new ArgumentNullException("builder"); } if (VirtualPathUtility.IsAppRelative(imagePath)) { imagePath = VirtualPathUtility.ToAbsolute(imagePath); } return(builder.BuildUrl(imagePath)); }