using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Drawing; using System.Xml; namespace OfficeOpenXml.Style.Dxf { public class ExcelDxfFontBase : DxfStyleBase { public ExcelDxfFontBase(ExcelStyles styles) : base(styles) { Color = new ExcelDxfColor(styles); } /// /// Font bold /// public bool? Bold { get; set; } /// /// Font Italic /// public bool? Italic { get; set; } /// /// Font-Strikeout /// public bool? Strike { get; set; } //public float? Size { get; set; } public ExcelDxfColor Color { get; set; } //public string Name { get; set; } //public int? Family { get; set; } ///// ///// Font-Vertical Align ///// //public ExcelVerticalAlignmentFont? VerticalAlign //{ // get; // set; //} public ExcelUnderLineType? Underline { get; set; } protected internal override string Id { get { return GetAsString(Bold) + "|" + GetAsString(Italic) + "|" + GetAsString(Strike) + "|" + (Color ==null ? "" : Color.Id) + "|" /*+ GetAsString(VerticalAlign) + "|"*/ + GetAsString(Underline); } } protected internal override void CreateNodes(XmlHelper helper, string path) { helper.CreateNode(path); SetValueBool(helper, path + "/d:b/@val", Bold); SetValueBool(helper, path + "/d:i/@val", Italic); SetValueBool(helper, path + "/d:strike", Strike); SetValue(helper, path + "/d:u/@val", Underline); SetValueColor(helper, path + "/d:color", Color); } protected internal override bool HasValue { get { return Bold != null || Italic != null || Strike != null || Underline != null || Color.HasValue; } } protected internal override ExcelDxfFontBase Clone() { return new ExcelDxfFontBase(_styles) { Bold = Bold, Color = Color.Clone(), Italic = Italic, Strike = Strike, Underline = Underline }; } } }