private void UpdatePreview() { GradientData = GetNewBrushData(); if (GradientData != null && !string.IsNullOrEmpty(GradientData.Data)) { try { using (LinearGradientBrush brush = CreateGradientBrush(pbPreview.ClientSize, GradientData)) { Bitmap bmp = new Bitmap(pbPreview.ClientSize.Width, pbPreview.ClientSize.Height); using (Graphics g = Graphics.FromImage(bmp)) { g.FillRectangle(brush, 0, 0, pbPreview.ClientSize.Width, pbPreview.ClientSize.Height); } pbPreview.Image = bmp; } } catch (Exception e) { Debug.WriteLine(e.ToString()); } } }
public static LinearGradientBrush CreateGradientBrush(Size size, GradientData gradientData) { IEnumerable<GradientStop> gradient = ParseGradientData(gradientData.Data); gradient = gradient.OrderBy(x => x.Offset); LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, size.Width, size.Height), Color.Black, Color.Black, gradientData.Type); ColorBlend blend = new ColorBlend(); blend.Colors = gradient.Select(x => x.Color).ToArray(); blend.Positions = gradient.Select(x => x.Offset).ToArray(); brush.InterpolationColors = blend; return brush; }
public GradientMaker(GradientData gradientData) : this() { GradientData = gradientData; if (GradientData != null) { rtbCodes.Text = GradientData.Data; cboGradientDirection.SelectedIndex = (int)GradientData.Type; UpdatePreview(); } }
public GradientMaker(GradientData gradientData) : this() { GradientData = gradientData; if (GradientData != null) { rtbCodes.Text = GradientData.Data; cboGradientDirection.SelectedIndex = (int)GradientData.Type; UpdatePreview(); } }
public static LinearGradientBrush CreateGradientBrush(Size size, GradientData gradientData) { IEnumerable <GradientStop> gradient = ParseGradientData(gradientData.Data); gradient = gradient.OrderBy(x => x.Offset); LinearGradientBrush brush = new LinearGradientBrush(new Rectangle(0, 0, size.Width, size.Height), Color.Black, Color.Black, gradientData.Type); ColorBlend blend = new ColorBlend(); blend.Colors = gradient.Select(x => x.Color).ToArray(); blend.Positions = gradient.Select(x => x.Offset).ToArray(); brush.InterpolationColors = blend; return(brush); }
private void UpdatePreview() { GradientData = GetNewBrushData(); if (GradientData != null && !string.IsNullOrEmpty(GradientData.Data)) { try { using (LinearGradientBrush brush = CreateGradientBrush(pbPreview.ClientSize, GradientData)) { Bitmap bmp = new Bitmap(pbPreview.ClientSize.Width, pbPreview.ClientSize.Height); using (Graphics g = Graphics.FromImage(bmp)) { g.FillRectangle(brush, 0, 0, pbPreview.ClientSize.Width, pbPreview.ClientSize.Height); } pbPreview.Image = bmp; } } catch (Exception e) { Debug.WriteLine(e.ToString()); } } }
private void btnOK_Click(object sender, EventArgs e) { GradientData = GetNewBrushData(); DialogResult = DialogResult.OK; Close(); }
private void btnOK_Click(object sender, EventArgs e) { GradientData = GetNewBrushData(); DialogResult = DialogResult.OK; Close(); }