文档彩票走势图>>Aspose中文文档>>更改或替换页眉和页脚
更改或替换页眉和页脚
Aspose.Words是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。
Aspose API支持流行文件格式处理,并允许将各类文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。
使用 Aspose.Words在 Aspose.Words 中,页眉或页脚通常使用DocumentBuilder进行更改。使用其方法MoveToHeaderFooter更新页眉或页脚。
以下代码示例显示如何替换页眉或页脚:
Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Create header and specify header title for the first page. builder.MoveToHeaderFooter(HeaderFooterType.HeaderPrimary); builder.Write("Aspose.Words Header"); // Create footer for pages other than first and specify Footer text. builder.MoveToHeaderFooter(HeaderFooterType.FooterPrimary); builder.Write("Aspose.Words Footer"); // Save the resulting document. doc.Save("ChangeHeadersAndFooters.docx");
点击复制
使用 Open XML SDK
需要使用的命名空间:
using System.Collections.Generic; using DocumentFormat.OpenXml; using DocumentFormat.OpenXml.Packaging; using DocumentFormat.OpenXml.Wordprocessing; using NUnit.Framework;
点击复制
以下代码示例显示如何替换页眉或页脚:
public void ChangeOrReplaceHeaderAndFooterFeature() { // Replace header in target document with header of source document. using (WordprocessingDocument document = ArtifactsDir + "Change or replace header and footer - OpenXML.docx", WordprocessingDocumentType.Document)) { // Get the main document part MainDocumentPart mainDocumentPart = document.MainDocumentPart; // Delete the existing header and footer parts mainDocumentPart.DeleteParts(mainDocumentPart.HeaderParts); mainDocumentPart.DeleteParts(mainDocumentPart.FooterParts); // Create a new header and footer part HeaderPart headerPart = mainDocumentPart.AddNewPart<HeaderPart>(); FooterPart footerPart = mainDocumentPart.AddNewPart<FooterPart>(); // Get Id of the headerPart and footer parts string headerPartId = mainDocumentPart.GetIdOfPart(headerPart); string footerPartId = mainDocumentPart.GetIdOfPart(footerPart); GenerateHeaderPartContent(headerPart); GenerateFooterPartContent(footerPart); // Get SectionProperties and Replace HeaderReference and FooterRefernce with new Id IEnumerable<SectionProperties> sections = mainDocumentPart.Document.Body.Elements<SectionProperties>(); foreach (var section in sections) { // Delete existing references to headers and footers section.RemoveAllChildren<HeaderReference>(); section.RemoveAllChildren<FooterReference>(); // Create the new header and footer reference node section.PrependChild<HeaderReference>(new HeaderReference() { Id = headerPartId }); section.PrependChild<FooterReference>(new FooterReference() { Id = footerPartId }); } } } private void GenerateHeaderPartContent(HeaderPart part) { Header header1 = new Header() { MCAttributes = new MarkupCompatibilityAttributes() { Ignorable = "w14 wp14" } }; header1.AddNamespaceDeclaration("wpc", "//schemas.microsoft.com/office/word/2010/wordprocessingCanvas"); header1.AddNamespaceDeclaration("mc", "//schemas.openxmlformats.org/markup-compatibility/2006"); header1.AddNamespaceDeclaration("o", "urn:schemas-microsoft-com:office:office"); header1.AddNamespaceDeclaration("r", "//schemas.openxmlformats.org/officeDocument/2006/relationships"); header1.AddNamespaceDeclaration("m", "//schemas.openxmlformats.org/officeDocument/2006/math"); header1.AddNamespaceDeclaration("v", "urn:schemas-microsoft-com:vml"); header1.AddNamespaceDeclaration("wp14", "//schemas.microsoft.com/office/word/2010/wordprocessingDrawing"); header1.AddNamespaceDeclaration("wp", "//schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"); header1.AddNamespaceDeclaration("w10", "urn:schemas-microsoft-com:office:word"); header1.AddNamespaceDeclaration("w", "//schemas.openxmlformats.org/wordprocessingml/2006/main"); header1.AddNamespaceDeclaration("w14", "//schemas.microsoft.com/office/word/2010/wordml"); header1.AddNamespaceDeclaration("wpg", "//schemas.microsoft.com/office/word/2010/wordprocessingGroup"); header1.AddNamespaceDeclaration("wpi", "//schemas.microsoft.com/office/word/2010/wordprocessingInk"); header1.AddNamespaceDeclaration("wne", "//schemas.microsoft.com/office/word/2006/wordml"); header1.AddNamespaceDeclaration("wps", "//schemas.microsoft.com/office/word/2010/wordprocessingShape"); Paragraph paragraph1 = new Paragraph() { RsidParagraphAddition = "00164C17", RsidRunAdditionDefault = "00164C17" }; ParagraphProperties paragraphProperties1 = new ParagraphProperties(); ParagraphStyleId paragraphStyleId1 = new ParagraphStyleId() { Val = "Header" }; paragraphProperties1.Append(paragraphStyleId1); Run run1 = new Run(); Text text1 = new Text(); text1.Text = "Header"; run1.Append(text1); paragraph1.Append(paragraphProperties1); paragraph1.Append(run1); header1.Append(paragraph1); part.Header = header1; } public static void GenerateFooterPartContent(FooterPart part) { Footer footer1 = new Footer() { MCAttributes = new MarkupCompatibilityAttributes() { Ignorable = "w14 wp14" } }; footer1.AddNamespaceDeclaration("wpc", "//schemas.microsoft.com/office/word/2010/wordprocessingCanvas"); footer1.AddNamespaceDeclaration("mc", "//schemas.openxmlformats.org/markup-compatibility/2006"); footer1.AddNamespaceDeclaration("o", "urn:schemas-microsoft-com:office:office"); footer1.AddNamespaceDeclaration("r", "//schemas.openxmlformats.org/officeDocument/2006/relationships"); footer1.AddNamespaceDeclaration("m", "//schemas.openxmlformats.org/officeDocument/2006/math"); footer1.AddNamespaceDeclaration("v", "urn:schemas-microsoft-com:vml"); footer1.AddNamespaceDeclaration("wp14", "//schemas.microsoft.com/office/word/2010/wordprocessingDrawing"); footer1.AddNamespaceDeclaration("wp", "//schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"); footer1.AddNamespaceDeclaration("w10", "urn:schemas-microsoft-com:office:word"); footer1.AddNamespaceDeclaration("w", "//schemas.openxmlformats.org/wordprocessingml/2006/main"); footer1.AddNamespaceDeclaration("w14", "//schemas.microsoft.com/office/word/2010/wordml"); footer1.AddNamespaceDeclaration("wpg", "//schemas.microsoft.com/office/word/2010/wordprocessingGroup"); footer1.AddNamespaceDeclaration("wpi", "//schemas.microsoft.com/office/word/2010/wordprocessingInk"); footer1.AddNamespaceDeclaration("wne", "//schemas.microsoft.com/office/word/2006/wordml"); footer1.AddNamespaceDeclaration("wps", "//schemas.microsoft.com/office/word/2010/wordprocessingShape"); Paragraph paragraph1 = new Paragraph() { RsidParagraphAddition = "00164C17", RsidRunAdditionDefault = "00164C17" }; ParagraphProperties paragraphProperties1 = new ParagraphProperties(); ParagraphStyleId paragraphStyleId1 = new ParagraphStyleId() { Val = "Footer" }; paragraphProperties1.Append(paragraphStyleId1); Run run1 = new Run(); Text text1 = new Text(); text1.Text = "Footer"; run1.Append(text1); paragraph1.Append(paragraphProperties1); paragraph1.Append(run1); footer1.Append(paragraph1); part.Footer = footer1; }
点击复制