AODL.Document.Import.OpenDocument.NodeProcessors.LocalStyleProcessor.ReReadKnownAutomaticStyles C# (CSharp) Метод

ReReadKnownAutomaticStyles() публичный Метод

Re read known automatic styles.
NOTICE: The re read nodes will be deleted.
public ReReadKnownAutomaticStyles ( ) : void
Результат void
		public void ReReadKnownAutomaticStyles()
		{
			XmlNode contentAutomaticStyles = this._document.XmlDoc.SelectSingleNode(
				"//office:automatic-styles", this._document.NamespaceManager);
			if (contentAutomaticStyles != null && contentAutomaticStyles.HasChildNodes)
			{
				ArrayList deleteNodes = new ArrayList();
				foreach(XmlNode styleNode in contentAutomaticStyles.ChildNodes)
				{
					XmlNode family			= styleNode.SelectSingleNode("@style:family",
						this._document.NamespaceManager);

					if (family != null)
					{
						if (family.InnerText == "table")
						{
							this.CreateTableStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "table-column")
						{
							this.CreateColumnStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "table-row")
						{
							this.CreateRowStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "table-cell")
						{
							this.CreateCellStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "paragraph")
						{
							this.CreateParagraphStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "graphic")
						{
							this.CreateFrameStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "section")
						{
							this.CreateSectionStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
						else if (family.InnerText == "text")
						{
							this.CreateTextStyle(styleNode);
							deleteNodes.Add(styleNode);
						}
					}
					else if (styleNode.Name == "text:list-style")
					{
						this.CreateListStyle(styleNode);
						deleteNodes.Add(styleNode);
					}
				}

				foreach(XmlNode deleteNode in deleteNodes)
				{
					contentAutomaticStyles.RemoveChild(deleteNode);
				}
			}
		}

Usage Example

		/// <summary>
		/// Reads the content.
		/// </summary>
		private void ReadContent()
		{
			/*
			 * NOTICE:
			 * Do not change this order!
			 */

			// 1. load content file
			this._document.XmlDoc			= new XmlDocument();
			this._document.XmlDoc.Load(Path.Combine(m_dirInfo.Dir, "content.xml"));

			// 2. Read local styles
			LocalStyleProcessor lsp			= new LocalStyleProcessor(this._document, false);
			lsp.ReadStyles();

			// 3. Import common styles and read common styles
			this.ImportCommonStyles();
			lsp								= new LocalStyleProcessor(this._document, true);
			lsp.ReadStyles();
			
			if (_document is TextDocument)
			{
				FormsProcessor fp= new FormsProcessor(this._document);
				fp.ReadFormNodes();
				
				TextDocument td = _document as TextDocument;
				td.VariableDeclarations.Clear();
				
				XmlNode nodeText		= td.XmlDoc.SelectSingleNode(
					TextDocumentHelper.OfficeTextPath, td.NamespaceManager);
				if (nodeText != null)
				{
					XmlNode nodeVarDecls = nodeText.SelectSingleNode("text:variable-decls", td.NamespaceManager);
					if (nodeVarDecls != null)
					{
						foreach (XmlNode vd in nodeVarDecls.CloneNode(true).SelectNodes("text:variable-decl", td.NamespaceManager))
						{
							td.VariableDeclarations.Add(new VariableDecl(td, vd));
						}
						nodeVarDecls.InnerXml = "";
					}
				}
			}
			
			// 4. Register warnig events
			MainContentProcessor mcp = new MainContentProcessor(this._document);
			mcp.Warning	+= mcp_OnWarning;

			// 5. Read the content
			mcp.ReadContentNodes();

			// 6.1 load master pages and styles for TextDocument
			if (this._document is TextDocument)
			{
				MasterPageFactory.RenameMasterStyles(
					((TextDocument)this._document).DocumentStyles.Styles,
					this._document.XmlDoc, this._document.NamespaceManager);
				// Read the moved and renamed styles
				lsp = new LocalStyleProcessor(this._document, false);
				lsp.ReReadKnownAutomaticStyles();
				new MasterPageFactory(m_dirInfo).FillFromXMLDocument(this._document as TextDocument);
			}
		}
All Usage Examples Of AODL.Document.Import.OpenDocument.NodeProcessors.LocalStyleProcessor::ReReadKnownAutomaticStyles