Class CompositeNode
名称: Aspose.Note 集合: Aspose.Note.dll (25.4.0)
基因类为可能包含其他 nodes 的节点。
public abstract class CompositeNode<t> : CompositeNodeBase, INode, ICompositeNode<t>, ICompositeNode, IEnumerable<t>, IEnumerable where T : INode
类型参数
T
组合节点中的元素类型。
Inheritance
object
←
Node
←
CompositeNodeBase
←
CompositeNode
Implements
INode
,
ICompositeNode
继承人
CompositeNodeBase.GetChildNodes(NodeType)
,
CompositeNodeBase.GetChildNodes
Constructors
CompositeNode(NodeType)
启动 Aspose.Note.CompositeNode`1 类的新例子。
protected CompositeNode(NodeType nodeType)
Parameters
nodeType
NodeType
节点的类型。
Properties
FirstChild
接收这个节点的第一个儿童节。
public T FirstChild { get; }
财产价值
T
Examples
显示如何检查一页是否是一个冲突页面(即它有 OneNote 无法自动合并的变更)。
string dataDir = RunExamples.GetDataDir_Pages();
// Load OneNote document
Document doc = new Document(dataDir + "Aspose.one", new LoadOptions { LoadHistory = true });
var history = doc.GetPageHistory(doc.FirstChild);
for (int i = 0; i < history.Count; i++)
{
var historyPage = history[i];
Console.Write(" {0}. Author: {1}, {2:dd.MM.yyyy hh.mm.ss}",
i,
historyPage.PageContentRevisionSummary.AuthorMostRecent,
historyPage.PageContentRevisionSummary.LastModifiedTime);
Console.WriteLine(historyPage.IsConflictPage ? ", IsConflict: true" : string.Empty);
// By default conflict pages are just skipped on saving.
// If mark it as non-conflict then it will be saved as usual one in the history.
if (historyPage.IsConflictPage)
historyPage.IsConflictPage = false;
}
doc.Save(dataDir + "ConflictPageManipulation_out.one", SaveFormat.One);
IsComposite
检查节点是否合成,如果是真实的,节點可以有子節。
public override sealed bool IsComposite { get; }
财产价值
LastChild
接到这个节点的最后一个婴儿节。
public T LastChild { get; }
财产价值
T
Methods
Accept(DocumentVisitor)
接待节点的参观者。
public override void Accept(DocumentVisitor visitor)
Parameters
visitor
DocumentVisitor
一个类的对象源于 Aspose.Note.DocumentVisitor。
首页 > T1>(T1)
将节点添加到本节的子节列表的前面。
public virtual T1 AppendChildFirst<t1>(T1 newChild) where T1 : T
Parameters
newChild
T1
添加的节点。
Returns
T1
添加节点。
类型参数
T1
正确的附加节点类型。
主条目(T1)
将节点添加到本节目的子节列表的尽头。
public virtual T1 AppendChildLast<t1>(T1 newChild) where T1 : T
Parameters
newChild
T1
添加的节点。
Returns
T1
添加节点。
类型参数
T1
正确的附加节点类型。
GetChildNodes(NodeType)
按节点类型获取所有儿童节。
[Obsolete("Use GetChildNodes<t>() method instead.")]
public override List<inode> GetChildNodes(NodeType type)
Parameters
type
NodeType
节点类型。
Returns
儿童节点列表
GetChildNodes()
根据节点类型获取所有儿童节。
public override List<t1> GetChildNodes<t1>() where T1 : class, INode
Returns
儿童节点列表
类型参数
T1
返回列表中的元素类型。
Examples
显示如何从文件中获取图像。
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_Images();
// Load the document into Aspose.Note.
Document oneFile = new Document(dataDir + "Aspose.one");
// Get all Image nodes
IList<aspose.note.image> nodes = oneFile.GetChildNodes<aspose.note.image>();
foreach (Aspose.Note.Image image in nodes)
{
using (MemoryStream stream = new MemoryStream(image.Bytes))
{
using (Bitmap bitMap = new Bitmap(stream))
{
// Save image bytes to a file
bitMap.Save(String.Format(dataDir + "{0}", Path.GetFileName(image.FileName)));
}
}
}</aspose.note.image></aspose.note.image>
显示如何获取图像的 meta 信息。
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir_Images();
// Load the document into Aspose.Note.
Document oneFile = new Document(dataDir + "Aspose.one");
// Get all Image nodes
IList<aspose.note.image> images = oneFile.GetChildNodes<aspose.note.image>();
foreach (Aspose.Note.Image image in images)
{
Console.WriteLine("Width: {0}", image.Width);
Console.WriteLine("Height: {0}", image.Height);
Console.WriteLine("OriginalWidth: {0}", image.OriginalWidth);
Console.WriteLine("OriginalHeight: {0}", image.OriginalHeight);
Console.WriteLine("FileName: {0}", image.FileName);
Console.WriteLine("LastModifiedTime: {0}", image.LastModifiedTime);
Console.WriteLine();
}</aspose.note.image></aspose.note.image>
GetEnumerator()
返回通过 Aspose.Note.CompositeNode`1 的儿童节点的列表器。
public IEnumerator<t> GetEnumerator()
Returns
一个数字化1 for the Aspose.Note.CompositeNode
1.
首頁 > 圖片 > T1>(T1、T1)
将节点插入该节目的子节列表中所指定的位置。
public virtual T1 InsertChild<t1>(int i, T1 newChild) where T1 : T
Parameters
i
int
插入的位置
newChild
T1
插入的节点。
Returns
T1
添加节点。
类型参数
T1
正确的插入节点类型。
InsertChildrenRange(int, IE 可数)
将从指定的位置开始的节点序列插入该节目的子节列表中。
public void InsertChildrenRange(int i, IEnumerable<t> newChildren)
Parameters
i
int
插入的位置
newChildren
IEnumerable
要插入的节点序列。
InsertChildrenRange(公平,T[])
将从指定的位置开始的节点序列插入该节目的子节列表中。
public void InsertChildrenRange(int i, params T[] newChildren)
Parameters
i
int
插入的位置
newChildren
T( )
要插入的节点序列。
取消(T1)
取出孩子的节点。
public T1 RemoveChild<t1>(T1 oldChild) where T1 : T
Parameters
oldChild
T1
要取消的节点。
Returns
T1
除去的节点。
类型参数
T1
正确的移除节点类型。