/// <summary>Writes an image html to the given writer.</summary> /// <param name="item">The item containing the data.</param> /// <param name="detailName">The name of the property to write.</param> /// <param name="writer">The writer to write to.</param> public static void WriteImage(ContentItem item, string detailName, string preferredSize, string alt, string cssClass, System.IO.TextWriter writer) { string imageUrl = item[detailName] as string; if (string.IsNullOrEmpty(imageUrl)) { return; } TagBuilder tb = new TagBuilder("img"); bool preferredSizeExists; tb.Attributes["src"] = ImagesUtility.GetExistingImagePath(imageUrl, preferredSize, out preferredSizeExists); tb.Attributes["alt"] = item.GetDetail(detailName + "_AlternateText", alt); cssClass = item.GetDetail(detailName + "_CssClass", cssClass); if (preferredSizeExists) { if (string.IsNullOrEmpty(cssClass)) { cssClass = preferredSize; } else { cssClass += " " + preferredSize; } } if (!string.IsNullOrEmpty(cssClass)) { tb.AddCssClass(cssClass); } writer.Write(tb.ToString(TagRenderMode.SelfClosing)); }
private void LoadSizes() { var imageConfig = Engine.Resolve <EditSection>().Images; string baseImagePath, imageSize; ImagesUtility.SplitImageAndSize(Selection.SelectedItem.Url, imageConfig.Sizes.GetSizeNames(), out baseImagePath, out imageSize); foreach (var size in imageConfig.Sizes.AllElements.Where(s => s.Announced)) { var hl = new HyperLink(); hl.ID = size.Name + "Size"; bool exists; var path = ImagesUtility.GetExistingImagePath(Engine.Resolve <IFileSystem>(), baseImagePath, size.Name, out exists); if (exists) { var file = (SelectedFile.Parent as File) ?? SelectedFile; hl.NavigateUrl = "File.aspx?selected=" + file.GetChild(VirtualPathUtility.GetFileName(path)).Path; hl.Text = Utility.GetResourceString("ImageSizes", size.Name + ".Text") ?? (string.IsNullOrEmpty(size.Description) ? size.Name : size.Description); hl.Text += GetSizeText(size.Width, size.Height); hl.CssClass = "command"; if (path == Selection.SelectedItem.Url) { omSizes.Controls.AddAt(0, hl); } else { omSizes.Controls.Add(hl); } } } omSizes.Visible = omSizes.Controls.Count > 1; }
public static string WriteImage(string imageUrl, System.IO.TextWriter writer, string preferredSize = null, string cssClass = null, string alt = null) { TagBuilder tb = new TagBuilder("img"); bool preferredSizeExists; tb.Attributes["src"] = Url.ToAbsolute(ImagesUtility.GetExistingImagePath(imageUrl, preferredSize, out preferredSizeExists)); tb.Attributes["alt"] = alt; if (preferredSizeExists) { if (string.IsNullOrEmpty(cssClass)) { cssClass = preferredSize; } else { cssClass += " " + preferredSize; } } if (!string.IsNullOrEmpty(cssClass)) { tb.AddCssClass(cssClass); } writer.Write(tb.ToString(TagRenderMode.SelfClosing)); return(cssClass); }
/// <summary>Adds an image control to the container.</summary> /// <param name="container">The containing control.</param> /// <param name="item">The item containing image informatin.</param> /// <param name="detailName">The detail name on the item.</param> /// <param name="cssClass">The css class to applky to the image element.</param> /// <param name="altText">Alt alternative text to apply to the image element.</param> /// <returns>An image control.</returns> public static Control AddImage(Control container, ContentItem item, string detailName, string preferredSize, string cssClass, string altText) { string imageUrl = item[detailName] as string; if (!string.IsNullOrEmpty(imageUrl)) { Image image = new Image(); image.ImageUrl = ImagesUtility.GetExistingImagePath(imageUrl, preferredSize); image.AlternateText = item.GetDetail(detailName + "_AlternateText", altText); image.CssClass = item.GetDetail(detailName + "_CssClass", cssClass); container.Controls.Add(image); return(image); } return(null); }
public static void WriteImage(string imageUrl, System.IO.TextWriter writer, IEnumerable <string> preferredSizes = null, string cssClass = null, string alt = null) { TagBuilder tb = new TagBuilder("img"); bool preferredSizeExists = false; string preferredSize = null; if (preferredSizes != null) { foreach (var size in preferredSizes) { var sizeUrl = ImagesUtility.GetExistingImagePath(imageUrl, size, out preferredSizeExists); if (!preferredSizeExists) { continue; } preferredSize = size; imageUrl = sizeUrl; break; } } tb.Attributes["src"] = Url.ToAbsolute(imageUrl); tb.Attributes["alt"] = alt; if (preferredSizeExists) { if (string.IsNullOrEmpty(cssClass)) { cssClass = preferredSize; } else { cssClass += " " + preferredSize; } } if (!string.IsNullOrEmpty(cssClass)) { tb.AddCssClass(cssClass); } writer.Write(tb.ToString(TagRenderMode.SelfClosing)); }
public virtual string GetThumbnailImageUrl() { return(ImagesUtility.GetExistingImagePath(Fs, ImageUrl, "thumb")); }
public virtual string GetResizedImageUrl() { return(ImagesUtility.GetExistingImagePath(Fs, ImageUrl, "wide")); }