/// <summary> /// Creates an Image Rendition if the name of the Image Rendition doesn't already exist. /// </summary> /// <param name="web">SharePoint Web</param> /// <param name="imageRenditionName">The display name of the Image Rendition</param> /// <param name="imageRenditionWidth">The width of the Image Rendition</param> /// <param name="imageRenditionHeight">The height of the Image Rendition</param> public static void CreatePublishingImageRendition(this Web web, string imageRenditionName, int imageRenditionWidth, int imageRenditionHeight) { List <string> imageRenditionNames = new List <string>(); List <ImageRendition> existingImageRenditions = SiteImageRenditions.GetRenditions(web.Context) as List <ImageRendition>; web.Context.ExecuteQueryRetry(); foreach (ImageRendition existingImageRendition in existingImageRenditions) { imageRenditionNames.Add(existingImageRendition.Name); } if (!imageRenditionNames.Contains(imageRenditionName)) { Log.Info(Constants.LOGGING_SOURCE, CoreResources.WebExtensions_CreatePublishingImageRendition, imageRenditionName, imageRenditionWidth, imageRenditionHeight); ImageRendition newImageRendition = new ImageRendition(); newImageRendition.Name = imageRenditionName; newImageRendition.Width = imageRenditionWidth; newImageRendition.Height = imageRenditionHeight; existingImageRenditions.Add(newImageRendition); SiteImageRenditions.SetRenditions(web.Context, existingImageRenditions); web.Context.ExecuteQueryRetry(); } else { Log.Info(Constants.LOGGING_SOURCE, CoreResources.WebExtensions_CreatePublishingImageRendition_Error, imageRenditionName); } }
/// <summary> /// Updates image renditions configured in settings.xml pnp:ImageRenditions for the site configured in app.config. /// Deletes existing image renditions with the same name and different attributes first. /// </summary> /// <param name="clientContext"></param> private static void CreateImageRenditions(ClientContext clientContext) { var imageRenditions = SiteImageRenditions.GetRenditions(clientContext); clientContext.ExecuteQueryRetry(); foreach (var node in _Branding.GetDescendants(_NameSpace + "ImageRenditions", _NameSpace + "ImageRendition")) { ImageRendition rendition = new ImageRendition() { Name = node.GetAttributeValue(_TokenParser, "Name"), Width = node.GetAttributeValue <int>(_TokenParser, "Width"), Height = node.GetAttributeValue <int>(_TokenParser, "Height") }; var existing = imageRenditions.FirstOrDefault(i => i.Name.Equals(rendition.Name, StringComparison.OrdinalIgnoreCase)); if (existing != null && (existing.Width != rendition.Width || existing.Height != rendition.Height)) { imageRenditions.Remove(existing); imageRenditions.Add(rendition); } else if (existing == null) { imageRenditions.Add(rendition); } } SiteImageRenditions.SetRenditions(clientContext, imageRenditions); clientContext.ExecuteQueryRetry(); }
private static ImageRendition SetImageRenditionProperties(ImageRenditionInfo imageRenditionInfo) { var imageRendition = new ImageRendition(); imageRendition.Name = imageRenditionInfo.Name; imageRendition.Height = imageRenditionInfo.Height; imageRendition.Width = imageRenditionInfo.Width; return(imageRendition); }
private void DeployImageRenditionSettings(object modelHost, SiteModelHost siteModelHost, ImageRenditionDefinition imageRenditionModel) { var renditions = SiteImageRenditions.GetRenditions(siteModelHost.HostSite); var currentRendition = GetCurrentImageRendition(renditions, imageRenditionModel); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioning, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); if (currentRendition == null) { currentRendition = new ImageRendition { Name = imageRenditionModel.Name, Width = imageRenditionModel.Width, Height = imageRenditionModel.Height }; InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); renditions.Add(currentRendition); renditions.Update(); } else { InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); } }
public void MarkForRedaction(ImageRendition rendition) { List <ImageRendition> list = null; _redactions.TryGetValue(rendition.StreamID, out list); if (list == null) { list = new List <ImageRendition>(); _redactions[rendition.StreamID] = list; } list.Add(rendition); _redactionSet.Add(rendition); }
public void RetinaImageBase_PreRender(object sender, EventArgs e) { float scale = getDevicePixelRatio(Page); m_scales = GetScales(); m_scales.Sort(); ImageRendition r = new ImageRendition("", 0.0f); foreach (ImageRendition f in m_scales) { if (r.Scale > 0.0f && f.Scale > scale && r.Scale >= scale) { break; } r = f; } base.ImageUrl = r.ImageUrl; }
public ImageRenditionPipeBind(ImageRendition item) { _item = item; }
public ImageRenditionPipeBind() { _item = null; _id = null; }
private void DeployImageRenditionSettings(object modelHost, SiteModelHost siteModelHost, ImageRenditionDefinition imageRenditionModel) { var context = siteModelHost.HostSite.Context; var renditions = SiteImageRenditions.GetRenditions(siteModelHost.HostSite.Context); context.ExecuteQueryWithTrace(); var currentRendition = GetCurrentImageRendition(renditions, imageRenditionModel); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioning, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); if (currentRendition == null) { TraceService.Information((int)LogEventId.ModelProvisionProcessingNewObject, "Processing new Image Rendition"); var newRendition = new ImageRendition { Name = imageRenditionModel.Name, Width = imageRenditionModel.Width, Height = imageRenditionModel.Height }; InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = newRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); renditions.Add(newRendition); SiteImageRenditions.SetRenditions(context, renditions); context.ExecuteQueryWithTrace(); } else { TraceService.Information((int)LogEventId.ModelProvisionProcessingNewObject, "Processing existing Image Rendition"); InvokeOnModelEvent(this, new ModelEventArgs { CurrentModelNode = null, Model = null, EventType = ModelEventType.OnProvisioned, Object = currentRendition, ObjectType = typeof(ImageRendition), ObjectDefinition = imageRenditionModel, ModelHost = modelHost }); } }
/// <summary> /// Initializes a new instance of the <see cref="ImageRenditionInfo"/> class. /// </summary> /// <param name="imageRendition">The image rendition.</param> public ImageRenditionInfo(ImageRendition imageRendition) { this.Name = imageRendition.Name; this.Width = imageRendition.Width; this.Height = imageRendition.Height; }
private static ImageRendition SetImageRenditionProperties(ImageRenditionInfo imageRenditionInfo) { var imageRendition = new ImageRendition(); imageRendition.Name = imageRenditionInfo.Name; imageRendition.Height = imageRenditionInfo.Height; imageRendition.Width = imageRenditionInfo.Width; return imageRendition; }