Exemplo n.º 1
0
        /// <summary>
        ///		Carga un gradiante lineal
        /// </summary>
        private LinearGradientBrushModel LoadLinearBrush(MLNode nodeML)
        {
            LinearGradientBrushModel linear = new LinearGradientBrushModel(nodeML.Attributes[ComicRepositoryConstants.TagKey].Value,
                                                                           nodeML.Attributes[ComicRepositoryConstants.TagResourceKey].Value);

            // Carga los datos del gradiante
            linear.Start        = Mediator.CommonRepository.GetPoint(nodeML.Attributes[ComicRepositoryConstants.TagStart].Value);
            linear.End          = Mediator.CommonRepository.GetPoint(nodeML.Attributes[ComicRepositoryConstants.TagEnd].Value);
            linear.SpreadMethod = Mediator.CommonRepository.GetSpreadMethod(nodeML.Attributes[ComicRepositoryConstants.TagSpread].Value);
            // Añade los puntos de parada
            linear.Stops.AddRange(LoadStops(nodeML));
            // Devuelve el gradiante
            return(linear);
        }
Exemplo n.º 2
0
        /// <summary>
        ///		Crea una brocha con un gradiante lineal
        /// </summary>
        private static LinearGradientBrush ConvertLinearBrush(PageModel page, LinearGradientBrushModel brush)
        {
            LinearGradientBrush background = new LinearGradientBrush();

            // Obtiene la brocha a partir del nombre del recurso
            if (!string.IsNullOrEmpty(brush.ResourceKey))
            {
                brush = GetBrushDefinition(page, brush.ResourceKey) as LinearGradientBrushModel;
            }
            // Si realmente se ha encontrado una brocha ...
            if (brush != null)
            {
                // Asigna los datos de la brocha
                background.StartPoint   = Convert(brush.Start);
                background.EndPoint     = Convert(brush.End);
                background.SpreadMethod = Convert(brush.SpreadMethod);
                // Asigna los puntos
                AddGradientStops(background, brush.Stops);
            }
            // Devuelve la brocha
            return(background);
        }