
1、首先拷贝安装包,分别命名为elasticsearch-6.2.4-001和elasticsearch-6.2.4-002。
2、接着在config目录下的jvm.options的内存设置为512M。
3、分别进入这两个安装文件的目录,修改config目录下的elasticsearch.yml文件。
4、接着启动节点node-001: ./elasticsearch。
5、然后启动节点node-002: ./elasticsearch,就完成了。
首先看一段代码,这段代码意图从docSource中获取第一个表格,并插入docTarget的末尾:1 var table = (Table)docSource.GetChild(NodeType.Table, 0, true)2 docTarget.FirstSection.Body.ChildNodes.Add(table)
这段代码会抛出异常:“The newChild was created from a different document than the one that created this node.”,这是什么原因呢?
原因是,对于Aspose.Words的Node对象,它的一系列样式和格式的控制,取决于它所在的DocumentBase父对象,这也是很多Aspose.Words对象声明时,必须指定它的DocumentBase参数,比如声明一个Table,应该如下:
1 Document doc=new Document()2 Table table=new Table(doc)
那么,我们有没有办法添加另一个文档中的对象呢?有,必须通过Document.ImportNode方法或者使用NodeImporter对象。
这两种方法思路都是将源文档中的Node导入到目标文档中,再追加Node到合适的位置。
Document.ImportNode
1
/// <summary>2 /// A manual implementation of the
Document.AppendDocument function which shows the general 3 /// steps of
how a document is appended to another. 4 /// </summary>5 ///
<param name="dstDoc">The destination document where to append
to.</param>6 /// <param name="srcDoc">The source
document.</param>7 /// <param name="mode">The import mode
to use when importing content from another document.</param>8
public void AppendDocument(Document dstDoc, Document srcDoc,
ImportFormatMode mode) 9 {10 // Loop through all sections in the
source document. 11 // Section nodes are immediate children of the
Document node so we can just enumerate the Document.12 foreach
(Section srcSection in srcDoc)13 {14 // Because we are
copying a section from one document to another, 15 // it is
required to import the Section node into the destination document.16
// This adjusts any document-specific references to styles, lists,
etc.17 //18 // Importing a node creates a copy of the
original node, but the copy19 // is ready to be inserted into
the destination document.20 Node dstSection =
dstDoc.ImportNode(srcSection, true, mode)21 22 // Now the new
section node can be appended to the destination document.23
dstDoc.AppendChild(dstSection)24 }25 }
NodeImporter
1
public static Document GenerateDocument(Document srcDoc, ArrayList
nodes) 2 { 3 // Create a blank document. 4
Document dstDoc = new Document()5 // Remove the first
paragraph from the empty document. 6
dstDoc.FirstSection.Body.RemoveAllChildren()7 8 // Import
each node from the list into the new document. Keep the original
formatting of the node. 9 NodeImporter importer = new
NodeImporter(srcDoc, dstDoc, ImportFormatMode.KeepSourceFormatting)10
11 foreach (Node node in nodes)12 {13
Node importNode = importer.ImportNode(node, true)14
dstDoc.FirstSection.Body.AppendChild(importNode)15 }16
17 // Return the generated document.18 return
dstDoc19 }
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)