/// <summary> /// 罫線<see cref="Border"/>の取得 /// left/right/top/bottom それぞれに 線のスタイルを指定可能 /// <see cref="BDStyles.None"/> は なし /// <see cref="BDStyles.Thin"/> は 実線 /// <see cref="BDStyles.Hair"/> は 点線(ダッシュとは異なる) /// <see cref="BDStyles.Double"/> は 二重線 で、主に利用するのは 前述の3つくらい /// <see cref="BDStyles.None"/> を利用した場合、xml に余計なタグを作成しない。 /// </summary> /// <param name="left"></param> /// <param name="right"></param> /// <param name="top"></param> /// <param name="bottom"></param> /// <returns></returns> public static Border GetBorder( BDStyles left = BDStyles.Thin, BDStyles right = BDStyles.Thin, BDStyles top = BDStyles.Thin, BDStyles bottom = BDStyles.Thin) { var border = new Border { DiagonalBorder = new DiagonalBorder { }, }; border.LeftBorder = left == BDStyles.None ? new LeftBorder() : new LeftBorder { Style = left, Color = new Color { Auto = true } }; border.RightBorder = right == BDStyles.None ? new RightBorder() : new RightBorder { Style = right, Color = new Color { Auto = true } }; border.TopBorder = top == BDStyles.None ? new TopBorder() : new TopBorder { Style = top, Color = new Color { Auto = true } }; border.BottomBorder = bottom == BDStyles.None ? new BottomBorder() : new BottomBorder { Style = bottom, Color = new Color { Auto = true } }; return(border); }
/// <summary> /// Adds a border to the stylesheet. /// </summary> /// <param name="placement">The border's cell placement.</param> /// <param name="style">The border's style.</param> /// <param name="color">The border's color.</param> /// <returns>The stylesheet position index associated with the element.</returns> public uint AddBorder(BorderPlacement placement, OpenXml.BorderStyleValues style, in Color color)
public static Border GetBorderAll(BDStyles style) => GetBorder(style, style, style, style);