/** * save and Commit footer */ protected override void Commit() { /*XmlOptions xmlOptions = new XmlOptions(DEFAULT_XML_OPTIONS); * xmlOptions.SaveSyntheticDocumentElement=(new QName(CTNumbering.type.Name.NamespaceURI, "ftr")); * Dictionary<String,String> map = new Dictionary<String, String>(); * map.Put("http://schemas.Openxmlformats.org/markup-compatibility/2006", "ve"); * map.Put("urn:schemas-microsoft-com:office:office", "o"); * map.Put("http://schemas.Openxmlformats.org/officeDocument/2006/relationships", "r"); * map.Put("http://schemas.Openxmlformats.org/officeDocument/2006/math", "m"); * map.Put("urn:schemas-microsoft-com:vml", "v"); * map.Put("http://schemas.Openxmlformats.org/drawingml/2006/wordProcessingDrawing", "wp"); * map.Put("urn:schemas-microsoft-com:office:word", "w10"); * map.Put("http://schemas.Openxmlformats.org/wordProcessingml/2006/main", "w"); * map.Put("http://schemas.microsoft.com/office/word/2006/wordml", "wne"); * xmlOptions.SaveSuggestedPrefixes=(map);*/ PackagePart part = GetPackagePart(); Stream out1 = part.GetOutputStream(); FtrDocument doc = new FtrDocument((CT_Ftr)headerFooter); XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces(new XmlQualifiedName[] { new XmlQualifiedName("ve", "http://schemas.openxmlformats.org/markup-compatibility/2006"), new XmlQualifiedName("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships"), new XmlQualifiedName("m", "http://schemas.openxmlformats.org/officeDocument/2006/math"), new XmlQualifiedName("v", "urn:schemas-microsoft-com:vml"), new XmlQualifiedName("wp", "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"), new XmlQualifiedName("w10", "urn:schemas-microsoft-com:office:word"), new XmlQualifiedName("wne", "http://schemas.microsoft.com/office/word/2006/wordml"), new XmlQualifiedName("w", "http://schemas.openxmlformats.org/wordprocessingml/2006/main") }); doc.Save(out1, namespaces); out1.Close(); }
internal override void OnDocumentRead() { base.OnDocumentRead(); FtrDocument ftrDocument = null; try { XmlDocument xmldoc = ConvertStreamToXml(GetPackagePart().GetInputStream()); ftrDocument = FtrDocument.Parse(xmldoc, NamespaceManager); headerFooter = ftrDocument.Ftr; // parse the document with cursor and add // the XmlObject to its lists foreach (object o in headerFooter.Items) { if (o is CT_P) { XWPFParagraph p = new XWPFParagraph((CT_P)o, this); paragraphs.Add(p); bodyElements.Add(p); } if (o is CT_Tbl) { XWPFTable t = new XWPFTable((CT_Tbl)o, this); tables.Add(t); bodyElements.Add(t); } if (o is CT_SdtBlock) { XWPFSDT c = new XWPFSDT((CT_SdtBlock)o, this); bodyElements.Add(c); } } } catch (Exception e) { throw new POIXMLException(e); } }
internal override void OnDocumentRead() { base.OnDocumentRead(); try { this.headerFooter = (CT_HdrFtr)FtrDocument.Parse(this.GetPackagePart().GetInputStream()).Ftr; foreach (object obj in this.headerFooter.Items) { if (obj is CT_P) { XWPFParagraph xwpfParagraph = new XWPFParagraph((CT_P)obj, (IBody)this); this.paragraphs.Add(xwpfParagraph); this.bodyElements.Add((IBodyElement)xwpfParagraph); } if (obj is CT_Tbl) { XWPFTable xwpfTable = new XWPFTable((CT_Tbl)obj, (IBody)this); this.tables.Add(xwpfTable); this.bodyElements.Add((IBodyElement)xwpfTable); } } } catch (Exception ex) { throw new POIXMLException(ex); } }
protected override void Commit() { Stream outputStream = this.GetPackagePart().GetOutputStream(); FtrDocument ftrDocument = new FtrDocument((CT_Ftr)this.headerFooter); XmlSerializerNamespaces namespaces = new XmlSerializerNamespaces(new XmlQualifiedName[8] { new XmlQualifiedName("ve", "http://schemas.openxmlformats.org/markup-compatibility/2006"), new XmlQualifiedName("r", "http://schemas.openxmlformats.org/officeDocument/2006/relationships"), new XmlQualifiedName("m", "http://schemas.openxmlformats.org/officeDocument/2006/math"), new XmlQualifiedName("v", "urn:schemas-microsoft-com:vml"), new XmlQualifiedName("wp", "http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing"), new XmlQualifiedName("w10", "urn:schemas-microsoft-com:office:word"), new XmlQualifiedName("wne", "http://schemas.microsoft.com/office/word/2006/wordml"), new XmlQualifiedName("w", "http://schemas.openxmlformats.org/wordprocessingml/2006/main") }); ftrDocument.Save(outputStream, namespaces); outputStream.Close(); }
internal override void OnDocumentRead() { base.OnDocumentRead(); FtrDocument ftrDocument = null; Stream is1; try { is1 = GetPackagePart().GetInputStream(); ftrDocument = FtrDocument.Parse(is1); headerFooter = ftrDocument.Ftr; // parse the document with cursor and add // the XmlObject to its lists foreach (object o in headerFooter.Items) { if (o is CT_P) { XWPFParagraph p = new XWPFParagraph((CT_P)o, this); paragraphs.Add(p); bodyElements.Add(p); } if (o is CT_Tbl) { XWPFTable t = new XWPFTable((CT_Tbl)o, this); tables.Add(t); bodyElements.Add(t); } } /*XmlCursor cursor = headerFooter.NewCursor(); * cursor.SelectPath("./*"); * while (cursor.ToNextSelection()) { * XmlObject o = cursor.Object; * if (o is CTP) { * XWPFParagraph p = new XWPFParagraph((CTP)o, this); * paragraphs.Add(p); * bodyElements.Add(p); * } * if (o is CTTbl) { * XWPFTable t = new XWPFTable((CTTbl)o, this); * tables.Add(t); * bodyElements.Add(t); * } * } * cursor.Dispose();*/ } catch (Exception e) { throw new POIXMLException(e); } }
public XWPFFooter CreateFooter(ST_HdrFtr type, XWPFParagraph[] pars) { XWPFRelation footer = XWPFRelation.FOOTER; string pStyle = "Footer"; int relationIndex = this.GetRelationIndex(footer); FtrDocument ftrDocument = new FtrDocument(); XWPFFooter relationship = (XWPFFooter)this.doc.CreateRelationship((POIXMLRelation)footer, (POIXMLFactory)XWPFFactory.GetInstance(), relationIndex); CT_HdrFtr headerFooter = this.buildFtr(type, pStyle, (XWPFHeaderFooter)relationship, pars); relationship.SetHeaderFooter(headerFooter); Stream outputStream = relationship.GetPackagePart().GetOutputStream(); ftrDocument.SetFtr((CT_Ftr)headerFooter); this.assignFooter(relationship, type); ftrDocument.Save(outputStream, this.Commit((XWPFHeaderFooter)relationship)); outputStream.Close(); return(relationship); }
public XWPFFooter CreateFooter(ST_HdrFtr type, XWPFParagraph[] pars) { XWPFRelation relation = XWPFRelation.FOOTER; String pStyle = "Footer"; int i = GetRelationIndex(relation); FtrDocument ftrDoc = new FtrDocument(); XWPFFooter wrapper = (XWPFFooter)doc.CreateRelationship(relation, XWPFFactory.GetInstance(), i); CT_HdrFtr ftr = buildFtr(type, pStyle, wrapper, pars); wrapper.SetHeaderFooter(ftr); ftrDoc.SetFtr((CT_Ftr)ftr); assignFooter(wrapper, type); using (Stream outputStream = wrapper.GetPackagePart().GetOutputStream()) { ftrDoc.Save(outputStream); } return(wrapper); }