Ejemplo n.º 1
0
        internal static PdfColors.LinearGradient ConvertLinearGradientBrush(LinearGradientBrush brush, double opacity, IPosition position, double width, double height)
        {
            Point startPoint = new Point(brush.StartPoint.X * width, brush.StartPoint.Y * height);
            Point endPoint = new Point(brush.EndPoint.X * width, brush.EndPoint.Y * height);

            var pdfGradient = new PdfColors.LinearGradient(startPoint, endPoint);
            pdfGradient.Position = position;

            foreach (GradientStop gradientStop in brush.GradientStops.OrderBy(x => x.Offset))
            {
                var rgbColor = new PdfColors.RgbColor((byte)(gradientStop.Color.A * opacity), gradientStop.Color.R, gradientStop.Color.G, gradientStop.Color.B);
                pdfGradient.GradientStops.Add(new PdfColors.GradientStop(rgbColor, gradientStop.Offset));
            }

            return pdfGradient;
        }
Ejemplo n.º 2
0
        internal static PdfColors.LinearGradient ConvertLinearGradientBrush(LinearGradientBrush brush, double opacity, IPosition position, double width, double height)
        {
            Point startPoint = new Point(brush.StartPoint.X * width, brush.StartPoint.Y * height);
            Point endPoint   = new Point(brush.EndPoint.X * width, brush.EndPoint.Y * height);

            var pdfGradient = new PdfColors.LinearGradient(startPoint, endPoint);

            pdfGradient.Position = position;

            foreach (GradientStop gradientStop in brush.GradientStops.OrderBy(x => x.Offset))
            {
                var rgbColor = new PdfColors.RgbColor((byte)(gradientStop.Color.A * opacity), gradientStop.Color.R, gradientStop.Color.G, gradientStop.Color.B);
                pdfGradient.GradientStops.Add(new PdfColors.GradientStop(rgbColor, gradientStop.Offset));
            }

            return(pdfGradient);
        }