protected override void OnPaint(PaintEventArgs e) { Color tpC1 = NuGenColorsStatic.TabPageColor1; Color tpC2 = NuGenColorsStatic.TabPageColor2; Color tpC3 = NuGenColorsStatic.TabPageColor3; Color tpC4 = NuGenColorsStatic.TabPageColor4; Color tpbC5 = NuGenColorsStatic.TabPageBorderColor; Color tpColor6 = NuGenColorsStatic.Color6; Color tpBackColor = NuGenColorsStatic.TabBarBackColor; if (ngMediImage != null) { tpC1 = ngMediImage.GetColorConfig().TabPageColor1; tpC2 = ngMediImage.GetColorConfig().TabPageColor2; tpC3 = ngMediImage.GetColorConfig().TabPageColor3; tpC4 = ngMediImage.GetColorConfig().TabPageColor4; tpbC5 = ngMediImage.GetColorConfig().TabPageBorderColor; tpColor6 = ngMediImage.GetColorConfig().Color6; tpBackColor = ngMediImage.GetColorConfig().TabBarBackColor; } e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; e.Graphics.SmoothingMode = SmoothingMode.HighQuality; e.Graphics.InterpolationMode = InterpolationMode.HighQualityBilinear; e.Graphics.CompositingQuality = CompositingQuality.HighQuality; Rectangle rect = new Rectangle(0, 0, this.Width - 1, this.Height - 1); if (this.hover) { RibbonControl.RenderSelection(e.Graphics, rect, 2f, this.pressed); } else if (this.ispressed) { RibbonControl.RenderSelection(e.Graphics, rect, 2f, true); } else if (!this.isflat) { Color[] col = new Color[] { tpC1, tpC2, tpC3, tpC4 }; float[] pos = new float[] { 0.0f, 0.2f, 0.2f, 1.0f }; ColorBlend blend = new ColorBlend(); blend.Colors = col; blend.Positions = pos; LinearGradientBrush brush = new LinearGradientBrush(rect, Color.Transparent, Color.Transparent, LinearGradientMode.Vertical); brush.InterpolationColors = blend; RibbonControl.FillRoundRectangle(e.Graphics, brush, rect, 2f); RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(tpColor6), rect, 2f); rect.Offset(1, 1); rect.Width -= 2; rect.Height -= 2; RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(new LinearGradientBrush(rect, tpBackColor, Color.Transparent, LinearGradientMode.ForwardDiagonal)), rect, 2f); } base.OnPaint(e); }
private Bitmap GenerateImage() { if (ngMediImage == null) { return(null); } Bitmap b = new Bitmap(50, 88); Graphics g = Graphics.FromImage(b); g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; g.SmoothingMode = SmoothingMode.HighQuality; g.InterpolationMode = InterpolationMode.HighQualityBilinear; g.CompositingQuality = CompositingQuality.HighQuality; Rectangle rect = new Rectangle(0, 0, this.Width - 1, this.Height - 1); Color[] col = new Color[] { ngMediImage.GetColorConfig().TabPageColor1, ngMediImage.GetColorConfig().TabPageColor2, ngMediImage.GetColorConfig().TabPageColor3, ngMediImage.GetColorConfig().TabPageColor4 }; float[] pos = new float[] { 0.0f, 0.2f, 0.2f, 1.0f }; ColorBlend blend = new ColorBlend(); blend.Colors = col; blend.Positions = pos; LinearGradientBrush brush = new LinearGradientBrush(rect, Color.Transparent, Color.Transparent, LinearGradientMode.Vertical); brush.InterpolationColors = blend; RibbonControl.FillRoundRectangle(g, brush, rect, 3f); RibbonControl.DrawRoundRectangle(g, new Pen(ngMediImage.GetColorConfig().Color6), rect, 3f); rect.Offset(1, 1); rect.Width -= 2; rect.Height -= 2; RibbonControl.DrawRoundRectangle(g, new Pen(new LinearGradientBrush(rect, ngMediImage.GetColorConfig().TabPageBorderColor, Color.Transparent, LinearGradientMode.ForwardDiagonal)), rect, 3f); g.Dispose(); Bitmap b2 = new Bitmap(12, 88); Graphics g2 = Graphics.FromImage(b2); g2.DrawImage(b, 0, 0, new Rectangle(10, 0, 12, 88), GraphicsUnit.Pixel); g2.Dispose(); b.Dispose(); return(b2); }
private void pictureBox1_Paint(object sender, PaintEventArgs e) { e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; e.Graphics.SmoothingMode = SmoothingMode.HighQuality; e.Graphics.InterpolationMode = InterpolationMode.HighQualityBilinear; e.Graphics.CompositingQuality = CompositingQuality.HighQuality; Rectangle rect = new Rectangle(0, 0, pictureBox1.Width - 1, pictureBox1.Height - 1); RibbonControl.FillRoundRectangle(e.Graphics, new LinearGradientBrush(e.ClipRectangle, this.startcolor, this.endcolor, LinearGradientMode.Horizontal), rect, 3f); StringFormat sf = new StringFormat(); sf.Alignment = StringAlignment.Center; sf.LineAlignment = StringAlignment.Center; e.Graphics.DrawString(Math.Round(this.value, 3).ToString(), this.label1.Font, new SolidBrush(Color.FromArgb(218, 226, 226)), rect, sf); if (this.hover) { float x = this.np ? (float)((this.value + 1.0) / 2.0) * rect.Width : (float)this.value * rect.Width; e.Graphics.DrawLine(new Pen(new LinearGradientBrush(e.ClipRectangle, Color.FromArgb(255, 255, 247), Color.FromArgb(210, 192, 141), LinearGradientMode.Vertical), 3f), x, 0, x, rect.Height); } else { float x = this.np ? (float)((this.value + 1.0) / 2.0) * rect.Width : (float)this.value * rect.Width; e.Graphics.DrawLine(new Pen(new LinearGradientBrush(e.ClipRectangle, Color.FromArgb(223, 183, 136), Color.FromArgb(171, 161, 140), LinearGradientMode.Vertical), 3f), x, 0, x, rect.Height); } RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(Color.FromArgb(172, 172, 172)), rect, 3f); rect.Offset(1, 1); rect.Width -= 2; rect.Height -= 2; RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(Color.FromArgb(96, 0, 0, 0)), rect, 3f); rect.Offset(1, 1); rect.Width -= 2; rect.Height -= 2; RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(Color.FromArgb(64, 0, 0, 0)), rect, 3f); rect.Offset(1, 1); rect.Width -= 2; rect.Height -= 2; RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(Color.FromArgb(32, 0, 0, 0)), rect, 3f); }
protected override void OnPaint(PaintEventArgs e) { this.BackColor = Color.Transparent; //this.RaisePaintEvent(null, e); //return; Color rgbC1 = NuGenColorsStatic.RibbonGroupBottomColor1; Color rgbC2 = NuGenColorsStatic.RibbonGroupBottomColor1; Color rgbC3 = NuGenColorsStatic.RibbonGroupBackColor; Color tpbC5 = NuGenColorsStatic.TabPageBorderColor; if (ngMediImage != null) { rgbC1 = ngMediImage.GetColorConfig().RibbonGroupBottomColor1; rgbC2 = ngMediImage.GetColorConfig().RibbonGroupBottomColor2; rgbC3 = ngMediImage.GetColorConfig().RibbonGroupBackColor; tpbC5 = ngMediImage.GetColorConfig().TabPageBorderColor; } //this.BackColor = rgbC3; e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; e.Graphics.SmoothingMode = SmoothingMode.HighQuality; e.Graphics.InterpolationMode = InterpolationMode.HighQualityBilinear; e.Graphics.CompositingQuality = CompositingQuality.HighQuality; Rectangle rect1 = new Rectangle(1, 1, this.Width - 2, this.Height - 2); Rectangle rect2 = Rectangle.Empty; if (direction == FlowDirection.LeftToRight) { rect2 = new Rectangle(0, this.Height - 18, this.Width - 2, 16); } else if (direction == FlowDirection.TopDown) { rect2 = new Rectangle(0, 0, 18, this.Height - 2); } Rectangle rect3 = new Rectangle(this.Width - 18, this.Height - 18, 15, 15); RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(tpbC5), rect1, 3f); GraphicsPath gp = new GraphicsPath(); gp.AddArc(rect2.X, rect2.Y - 4f, 6f, 6f, 180, 90); gp.AddArc(rect2.X + rect2.Width - 6f, rect2.Y - 5f, 6f, 6f, 270, 90); gp.AddArc(rect2.X + rect2.Width - 6f, rect2.Y + rect2.Height - 6f, 6f, 6f, 0, 90); gp.AddArc(rect2.X, rect2.Y + rect2.Height - 6f, 6f, 6f, 90, 90); gp.CloseFigure(); e.Graphics.SetClip(gp, CombineMode.Intersect); gp.Dispose(); e.Graphics.FillRectangle(new LinearGradientBrush(rect2, rgbC1, rgbC2, LinearGradientMode.Vertical), rect2); e.Graphics.Clip = new Region(); StringFormat sf = new StringFormat(); sf.Alignment = StringAlignment.Center; sf.LineAlignment = StringAlignment.Center; e.Graphics.DrawString(this.Text, this.Font, new SolidBrush(Color.White), rect2, sf); if (OnPopup != null) { if (this.hoverplus) { RibbonControl.RenderSelection(e.Graphics, rect3, 2f, this.pressed); e.Graphics.DrawString("+", this.Font, new SolidBrush(Color.Black), rect3, sf); } else { e.Graphics.DrawString("+", this.Font, new SolidBrush(Color.White), rect3, sf); } } rect1.Offset(-1, -1); RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(Color.FromArgb(140, 141, 143)), rect1, 3f); }
protected override void OnPaint(PaintEventArgs e) { Color tpBackColor = NuGenColorsStatic.TabBarBackColor; Color tpColor6 = NuGenColorsStatic.Color6; if (this.ngMediImage != null) { tpBackColor = ngMediImage.GetColorConfig().TabBarBackColor; tpColor6 = ngMediImage.GetColorConfig().Color6; } e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.ClearTypeGridFit; e.Graphics.SmoothingMode = SmoothingMode.HighQuality; e.Graphics.InterpolationMode = InterpolationMode.HighQualityBilinear; e.Graphics.CompositingQuality = CompositingQuality.HighQuality; e.Graphics.Clear(tpBackColor); e.Graphics.DrawLine(new Pen(Color.FromArgb(115, 115, 115)), 0, 0, this.Width, 0); Rectangle rect = new Rectangle(0, 0, this.Width, this.Height); if (this.Height > 26) { RibbonControl.FillRoundRectangle(e.Graphics, new SolidBrush(Color.FromArgb(32, Color.Black)), new Rectangle(5, this.Height - 20, this.Width - 10, 17), 3f); RibbonControl.FillRoundRectangle(e.Graphics, new SolidBrush(Color.FromArgb(32, Color.Black)), new Rectangle(5, this.Height - 20, this.Width - 10, 16), 3f); } int ti = 0; foreach (TabPage tab in this.TabPages) { Rectangle tabrect = this.GetTabRect(ti); tabrect.Height += 4; StringFormat sf = new StringFormat(); sf.Alignment = StringAlignment.Center; sf.LineAlignment = StringAlignment.Center; if (this.SelectedIndex >= 0 && tab.Name != "tbStart" && this.Height > 26 && tab == this.SelectedTab) { //Rectangle tabRectR = new Rectangle(tabrect.X + 3, tabrect.Y, tabrect.Width, tabrect.Height); Rectangle tabRectR = tabrect; RibbonControl.FillTopRoundRectangle(e.Graphics, new SolidBrush(Color.FromArgb(32, Color.Black)), new Rectangle(tabrect.X - 2, tabrect.Y, tabrect.Width + 4, tabrect.Height + 4), 3f); RibbonControl.FillTopRoundRectangle(e.Graphics, new SolidBrush(Color.FromArgb(16, Color.Black)), new Rectangle(tabrect.X - 1, tabrect.Y, tabrect.Width + 2, tabrect.Height + 4), 3f); RibbonControl.FillTopRoundRectangle(e.Graphics, new LinearGradientBrush(tabrect, Color.FromArgb(237, 238, 239), Color.FromArgb(206, 210, 217), LinearGradientMode.Vertical), tabRectR, 3f); RibbonControl.DrawTopRoundRectangle(e.Graphics, new Pen(tpColor6), tabRectR, 3f); tabrect.Offset(1, 1); tabrect.Width -= 2; tabrect.Height--; RibbonControl.DrawRoundRectangle(e.Graphics, new Pen(new LinearGradientBrush(tabrect, Color.FromArgb(249, 249, 249), Color.Transparent, LinearGradientMode.ForwardDiagonal)), tabRectR, 3f); Region region = new Region(); region.Exclude(new Rectangle(tabrect.X - 4, 0, tabrect.Width + 1, 2)); tab.Region = region; tabrect.Height -= 2; e.Graphics.DrawString(tab.Text, tab.Font, new SolidBrush(Color.Black), tabrect, sf); } else if (ti == this.hoverindex && (!this.closed || ti == 0)) { tabrect.Width--; if (ti == 0) { tabrect.X += 2; tabrect.Width -= 2; tabrect.Height -= 3; RibbonControl.RenderSelection(e.Graphics, tabrect, 3f, this.pressed); tabrect.X -= 2; tabrect.Width += 2; tabrect.Height += 3; } else { RibbonControl.RenderTopSelection(e.Graphics, tabrect, 3f, this.pressed); } tabrect.Width++; tabrect.Height -= 2; e.Graphics.DrawString(tab.Text, tab.Font, new SolidBrush(Color.Black), tabrect, sf); } else { tabrect.Height -= 2; e.Graphics.DrawString(tab.Text, tab.Font, new SolidBrush(Color.White), tabrect, sf); } ti++; } }