类 Notebook
内容
[
隐藏
]Notebook class
表示一个 Aspose.Note 笔记本。
public class Notebook : IEnumerable<INotebookChildNode>, INotebookChildNode
构造函数
| 名称 | 描述 |
|---|---|
| Notebook() | 初始化 Notebook 类的新实例。 |
| Notebook(Stream) | 初始化 Notebook 类的新实例。从流中打开现有的 OneNote 笔记本。 |
| Notebook(string) | 初始化 Notebook 类的新实例。从文件中打开现有的 OneNote 笔记本。 |
| Notebook(Stream, NotebookLoadOptions) | 初始化 Notebook 类的新实例。从流中打开现有的 OneNote 笔记本。允许指定额外的加载选项。 |
| Notebook(string, NotebookLoadOptions) | 初始化 Notebook 类的新实例。从文件中打开现有的 OneNote 笔记本。允许指定额外的选项,例如子项加载策略("lazy"/instant)。 |
属性
| 名称 | 描述 |
|---|---|
| Color { get; set; } | 获取或设置颜色。 |
| Count { get; } | 获取 Notebook 中包含的元素数量。 |
| DisplayName { get; set; } | 获取或设置显示名称。 |
| FileFormat { get; } | 获取文件格式(OneNote 2010,OneNote Online)。 |
| Guid { get; } | 获取对象的全局唯一标识符。 |
| IsHistoryEnabled { get; set; } | 获取或设置指示是否启用历史记录的值。 |
| Item { get; } | 通过给定索引获取笔记本子节点。 |
方法
| 名称 | 描述 |
|---|---|
| AppendChild(INotebookChildNode) | 将节点添加到列表末尾。 |
| GetChildNodes<T1>() | 按节点类型获取所有子节点。 |
| GetEnumerator() | 返回一个枚举器,用于遍历 Notebook 的子节点。 |
| LoadChildDocument(Stream) | 添加子文档节点。从流中打开现有的 OneNote 文档。 |
| LoadChildDocument(string) | 添加子文档节点。从文件中打开现有的 OneNote 文档。 |
| LoadChildDocument(Stream, LoadOptions) | 添加子文档节点。从流中打开现有的 OneNote 文档。允许指定额外的加载选项。 |
| LoadChildDocument(string, LoadOptions) | 添加子文档节点。从文件中打开现有的 OneNote 文档。允许指定额外的加载选项。 |
| LoadChildNotebook(Stream) | 添加子笔记本节点。从流中打开现有的 OneNote 笔记本。 |
| LoadChildNotebook(string) | 添加子笔记本节点。从文件中打开现有的 OneNote 笔记本。 |
| LoadChildNotebook(Stream, NotebookLoadOptions) | 添加子笔记本节点。从流中打开现有的 OneNote 笔记本。允许指定额外的加载选项。 |
| LoadChildNotebook(string, NotebookLoadOptions) | 添加子笔记本节点。从文件中打开现有的 OneNote 笔记本。允许指定额外的加载选项。 |
| RemoveChild(INotebookChildNode) | 移除子节点。 |
| Save(Stream) | 将 OneNote 文档保存到流中。 |
| Save(string) | 将 OneNote 文档保存到文件中。 |
| Save(Stream, NotebookSaveOptions) | 使用指定的保存选项将 OneNote 文档保存到流中。 |
| Save(Stream, SaveFormat) | 以指定格式将 OneNote 文档保存到流中。 |
| Save(string, NotebookSaveOptions) | 使用指定的保存选项将 OneNote 文档保存到文件中。 |
| Save(string, SaveFormat) | 以指定格式将 OneNote 文档保存到文件中。 |
示例
展示如何保存笔记本。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
var notebook = new Notebook();
dataDir = dataDir + "test_out.onetoc2";
// 保存笔记本
notebook.Save(dataDir);
展示如何以 PDF 格式保存笔记本。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
dataDir = dataDir + "ConvertToPDF_out.pdf";
// 保存笔记本
notebook.Save(dataDir);
展示如何将笔记本保存为图像。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
dataDir = dataDir + "ConvertToImage_out.png";
// 保存笔记本
notebook.Save(dataDir);
展示如何获取笔记本中的所有文本。
string inputFile = "notebook.onetoc2";
string dataDir = RunExamples.GetDataDir_NoteBook();
Notebook rootNotebook = new Notebook(dataDir + inputFile);
IList<RichText> allRichTextNodes = rootNotebook.GetChildNodes<RichText>();
foreach (RichText richTextNode in allRichTextNodes)
{
Console.WriteLine(richTextNode.Text);
}
展示如何以 PDF 格式保存扁平化的笔记本。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
// 保存笔记本
dataDir = dataDir + "ConvertToPDFAsFlattened_out.pdf";
notebook.Save(
dataDir,
new NotebookPdfSaveOptions
{
Flatten = true
});
展示如何遍历笔记本的文档并懒加载它们。
string inputFile = "Notebook.onetoc2";
string dataDir = RunExamples.GetDataDir_NoteBook();
// 默认情况下,子项加载为“懒惰”。
Notebook notebook = new Notebook(dataDir + inputFile);
foreach (var notebookChildNode in notebook.OfType<Document>())
{
// 子文档的实际加载仅在此处进行。
// 对子文档进行操作
}
展示如何向笔记本添加新章节。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
// 向笔记本追加新子项
notebook.AppendChild(new Document(dataDir + "Neuer Abschnitt 1.one"));
dataDir = dataDir + "AddChildNode_out.onetoc2";
// 保存笔记本
notebook.Save(dataDir);
展示如何从流加载笔记本。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
FileStream stream = new FileStream(dataDir + "Notebook.onetoc2", FileMode.Open);
var notebook = new Notebook(stream);
using (FileStream childStream = new FileStream(dataDir + "Aspose.one", FileMode.Open))
{
notebook.LoadChildDocument(childStream);
}
notebook.LoadChildDocument(dataDir + "Sample1.one");
展示如何打开加密的笔记本。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
var notebook = new Notebook(dataDir + "test.onetoc2", new NotebookLoadOptions() { DeferredLoading = true });
notebook.LoadChildDocument(dataDir + "Aspose.one");
notebook.LoadChildDocument(dataDir + "Locked Pass1.one", new LoadOptions() { DocumentPassword = "pass" });
notebook.LoadChildDocument(dataDir + "Locked Pass2.one", new LoadOptions() { DocumentPassword = "pass2" });
展示如何使用指定选项将笔记本保存为图像。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
var notebookSaveOptions = new NotebookImageSaveOptions(SaveFormat.Png);
var documentSaveOptions = notebookSaveOptions.DocumentSaveOptions;
documentSaveOptions.Resolution = 400;
dataDir = dataDir + "ConvertToImageWithOptions_out.png";
// 保存笔记本
notebook.Save(dataDir, notebookSaveOptions);
展示如何将扁平化的笔记本保存为图像。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "Notebook.onetoc2");
var notebookSaveOptions = new NotebookImageSaveOptions(SaveFormat.Png);
var documentSaveOptions = notebookSaveOptions.DocumentSaveOptions;
documentSaveOptions.Resolution = 400;
notebookSaveOptions.Flatten = true;
dataDir = dataDir + "ConvertToImageAsFlattenedNotebook_out.png";
// 保存笔记本
notebook.Save(dataDir, notebookSaveOptions);
展示如何从笔记本中删除章节。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_NoteBook();
// 加载 OneNote 笔记本
var notebook = new Notebook(dataDir + "test.onetoc2");
// 遍历其子节点以搜索所需的子项
foreach (var child in new List<INotebookChildNode>(notebook))
{
if (child.DisplayName == "Remove Me")
{
// 从笔记本中删除子项
notebook.RemoveChild(child);
}
}
dataDir = dataDir + "RemoveChildNode_out.onetoc2";
// 保存笔记本
notebook.Save(dataDir);
展示如何遍历笔记本的预加载文档。
// 默认情况下,子项加载为“懒惰”。
// 因此,已完成即时加载,
// 需要设置 NotebookLoadOptions.InstantLoading 标志。
NotebookLoadOptions loadOptions = new NotebookLoadOptions { InstantLoading = true };
String inputFile = "Notebook.onetoc2";
String dataDir = RunExamples.GetDataDir_NoteBook();
Notebook notebook = new Notebook(dataDir + inputFile, loadOptions);
// 所有子文档已加载。
foreach (INotebookChildNode notebookChildNode in notebook.OfType<Document>())
{
// 对子文档进行操作
}
展示如何遍历笔记本的内容。
// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_LoadingAndSaving();
string fileName = "Open Notebook.onetoc2";
try
{
var notebook = new Notebook(dataDir + fileName);
foreach (var notebookChildNode in notebook)
{
Console.WriteLine(notebookChildNode.DisplayName);
if (notebookChildNode is Document)
{
// 对子文档进行操作
}
else if (notebookChildNode is Notebook)
{
// 对子笔记本进行操作
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
另请参阅
- interface INotebookChildNode
- namespace Aspose.Note
- assembly Aspose.Note