/// <summary> /// Sets the document footer section from model. /// </summary> /// <param name="reference">The header or footer document properties.</param> /// <param name="section">Fotter section model information.</param> /// <returns> /// An <see cref="T:OfficeOpenXml.OfficeProperties"/> reference which contains the document footer section. /// </returns> private static ExcelHeaderFooter SetDocumentFooterSectionFromModel(this ExcelHeaderFooter reference, HeaderFooterSectionModel section) { SentinelHelper.ArgumentNull(reference); SentinelHelper.ArgumentNull(section); if (string.IsNullOrEmpty(section.Text)) { return(reference); } var footer = section.Type == KnownHeaderFooterSectionType.Odd ? reference.OddFooter : reference.EvenFooter; var parsedText = OfficeOpenXmlHelper.GetHeaderFooterParsedText(section.Text); switch (section.Alignment) { case KnownHeaderFooterAlignment.Right: footer.RightAlignedText = parsedText; break; case KnownHeaderFooterAlignment.Left: footer.LeftAlignedText = parsedText; break; default: case KnownHeaderFooterAlignment.Center: footer.CenteredText = parsedText; break; } return(reference); }
/// <summary> /// Sets the header document from model. /// </summary> /// <param name="reference">The header document properties.</param> /// <param name="footer">Header or footer model information.</param> /// <returns> /// An <see cref="T:OfficeOpenXml.OfficeProperties"/> reference which contains the document header. /// </returns> public static ExcelHeaderFooter SetDocumentFooterFromModel(this ExcelHeaderFooter reference, DocumentHeaderFooterModel footer) { SentinelHelper.ArgumentNull(reference); SentinelHelper.ArgumentNull(footer); bool hasSections = footer.Sections.Any(); if (!hasSections) { return(reference); } var sections = footer.Sections; foreach (var section in sections) { SetDocumentFooterSectionFromModel(reference, section); } return(reference); }