/// <summary> /// 获得内置矩形 /// </summary> /// <param name="rect">外围的矩形</param> /// <param name="Align">水平对齐方式</param> /// <param name="LineAlign">垂直对齐方式</param> /// <param name="InnerRectSize">内置矩形的大小</param> /// <returns>内置矩形</returns> public static System.Drawing.RectangleF GetInnerRectangle( System.Drawing.RectangleF rect, System.Drawing.StringAlignment Align, System.Drawing.StringAlignment LineAlign, System.Drawing.SizeF InnerRectSize) { float left = 0; float top = 0; if (Align == System.Drawing.StringAlignment.Near) { left = rect.Left; } else if (Align == System.Drawing.StringAlignment.Center) { left = rect.Left + (rect.Width - InnerRectSize.Width) / 2; } else { left = rect.Right - InnerRectSize.Width; } if (LineAlign == System.Drawing.StringAlignment.Near) { top = rect.Top; } else if (LineAlign == System.Drawing.StringAlignment.Center) { top = rect.Top + (rect.Height - InnerRectSize.Height) / 2; } else { top = rect.Bottom - InnerRectSize.Height; } return(new System.Drawing.RectangleF(left, top, InnerRectSize.Width, InnerRectSize.Height)); }
private static int ControlAlign_GetValue(int ParentValue, int CtrlValue, System.Drawing.StringAlignment align) { int rtn; switch (align) { case System.Drawing.StringAlignment.Near: rtn = 0; break; case System.Drawing.StringAlignment.Center: rtn = (ParentValue / 2) - (CtrlValue / 2); break; default: rtn = ParentValue - CtrlValue; break; } if (rtn < 0) { rtn = 0; } return(rtn); }
/// <summary> /// Add Legend /// </summary> /// <param name="alignment"></param> /// <param name="docking"></param> /// <param name="_chart"></param> public static void AddLegend(System.Drawing.StringAlignment alignment, Docking docking, ref Chart _chart) { var legend = new Legend() { Name = "Legend", Alignment = alignment, Docking = docking, Font = new System.Drawing.Font("Arial", 10), BackColor = System.Drawing.Color.Transparent }; _chart.Legends.Add(legend); }
public static int[] CalcuteAlignPosition( int[] Widths, int Spacing, int ContentWidth, System.Drawing.StringAlignment Align, bool SplitBlank) { if (Align == System.Drawing.StringAlignment.Near) { return(CalcuteAlignPosition(Widths, Spacing, ContentWidth, 0, SplitBlank)); } if (Align == System.Drawing.StringAlignment.Center) { return(CalcuteAlignPosition(Widths, Spacing, ContentWidth, 1, SplitBlank)); } if (Align == System.Drawing.StringAlignment.Far) { return(CalcuteAlignPosition(Widths, Spacing, ContentWidth, 2, SplitBlank)); } return(null); }