在 Aspose.Note 中创建 OneNote 文档并保存为 HTML
介绍
Aspose.Note for .NET 是一个功能强大的 API,允许开发人员在其 .NET 应用程序中以编程方式使用 Microsoft OneNote 文档。使用 Aspose.Note,您可以轻松创建、操作和转换 OneNote 文件。在本教程中,我们将探索如何使用 Aspose.Note for .NET API 提供的各种选项创建 OneNote 文档并将其保存为 HTML 格式。
先决条件
在我们开始之前,请确保您满足以下先决条件:
- C# 编程语言的基础知识。
- Visual Studio 安装在您的系统上。
- Aspose.Note for .NET API 安装在您的项目中。您可以从以下位置下载:这里.
- 熟悉Microsoft OneNote文档的结构。
导入命名空间
在我们深入编码部分之前,让我们导入必要的命名空间:
using System;
using System.Drawing;
using System.Globalization;
using System.IO;
using Aspose.Note.Saving;
using Aspose.Note.Saving.Html;
现在,让我们将每个示例分解为多个步骤,看看如何使用 Aspose.Note for .NET 创建 OneNote 文档并将其保存为 HTML 格式。
步骤 1:使用默认选项创建 OneNote 文档
public static void CreateAndSaveToHTMLUsingDefaultOptions()
{
//初始化 OneNote 文档
Document doc = new Document();
Page page = doc.AppendChildLast(new Page());
//文档中所有文本的默认样式。
ParagraphStyle textStyle = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
page.Title = new Title()
{
TitleText = new RichText() { Text = "Title text.", ParagraphStyle = textStyle },
TitleDate = new RichText() { Text = new DateTime(2011, 11, 11).ToString("D", CultureInfo.InvariantCulture), ParagraphStyle = textStyle },
TitleTime = new RichText() { Text = "12:34", ParagraphStyle = textStyle }
};
//保存为 HTML 格式
string dataDir = "Your Document Directory";
string outputPath = Path.Combine(dataDir, "CreateOneNoteDocAndSaveToHTML_out.html");
doc.Save(outputPath);
Console.WriteLine("\nOneNote document created successfully.\nFile saved at " + outputPath);
}
在此步骤中,我们初始化一个新的 OneNote 文档,添加带有标题的页面,并使用默认选项将其保存为 HTML 格式。
步骤 2:创建特定页面范围并将其保存为 HTML
public static void CreateAndSavePageRange()
{
//初始化 OneNote 文档
Document doc = new Document();
Page page = doc.AppendChildLast(new Page());
//文档中所有文本的默认样式。
ParagraphStyle textStyle = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
page.Title = new Title()
{
TitleText = new RichText() { Text = "Title text.", ParagraphStyle = textStyle },
TitleDate = new RichText() { Text = new DateTime(2011, 11, 11).ToString("D", CultureInfo.InvariantCulture), ParagraphStyle = textStyle },
TitleTime = new RichText() { Text = "12:34", ParagraphStyle = textStyle }
};
//保存为 HTML 格式
string dataDir = "Your Document Directory";
string outputPath = Path.Combine(dataDir, "CreateAndSavePageRange_out.html");
doc.Save(outputPath, new HtmlSaveOptions { PageCount = 1, PageIndex = 0 });
Console.WriteLine("\nOneNote document created successfully and saved as page range.\nFile saved at " + outputPath);
}
在这里,我们演示如何创建文档并将特定页面范围保存为 HTML 格式。
步骤 3:将嵌入资源另存为 HTML 到内存流
public static void SaveAsHTMLToMemoryStreamWithEmbeddedResources()
{
//加载 OneNote 文档
string dataDir = "Your Document Directory";
var document = new Document(Path.Combine(dataDir, "Aspose.one"));
//指定 HTML 保存选项
var options = new HtmlSaveOptions()
{
ExportCss = ResourceExportType.ExportEmbedded,
ExportFonts = ResourceExportType.ExportEmbedded,
ExportImages = ResourceExportType.ExportEmbedded,
FontFaceTypes = FontFaceType.Ttf
};
//将文档保存到内存流
var memoryStream = new MemoryStream();
document.Save(memoryStream, options);
}
此步骤说明如何将带有嵌入资源(CSS、字体和图像)的 OneNote 文档保存为 HTML 格式到内存流中。
步骤 4:另存为 HTML 到文件,资源位于单独的文件中
public static void SaveAsHTMLToFileWithResourcesInSeparateFiles()
{
//加载 OneNote 文档
string dataDir = "Your Document Directory";
var document = new Document(Path.Combine(dataDir, "Aspose.one"));
//指定 HTML 保存选项
var options = new HtmlSaveOptions()
{
ExportCss = ResourceExportType.ExportAsStream,
ExportFonts = ResourceExportType.ExportAsStream,
ExportImages = ResourceExportType.ExportAsStream,
FontFaceTypes = FontFaceType.Ttf
};
//将文档保存为 HTML 文件,资源存储在单独的文件中
document.Save(Path.Combine(dataDir, "document_out.html"), options);
}
在此步骤中,我们将 OneNote 文档保存为 HTML 格式,并将所有资源(CSS、字体和图像)存储在单独的文件中。
第 5 步:保存为 HTML 到内存流,并通过回调来节省资源
public static void SaveAsHTMLToMemoryStreamWithCallBacksToSaveResources()
{
//指定保存回调配置
var savingCallbacks = new UserSavingCallbacks()
{
RootFolder = "documentFolder",
CssFolder = "css",
KeepCssStreamOpened = true,
ImagesFolder = "images",
FontsFolder = "fonts"
};
//指定 HTML 保存选项
var options = new HtmlSaveOptions
{
FontFaceTypes = FontFaceType.Ttf,
CssSavingCallback = savingCallbacks,
FontSavingCallback = savingCallbacks,
ImageSavingCallback = savingCallbacks
};
//加载 OneNote 文档
string dataDir = "Your Document Directory";
var document = new Document(Path.Combine(dataDir, "Aspose.one"));
//使用由用户定义的回调管理的资源将文档保存为 HTML 格式
using (var stream = File.Create(Path.Combine(savingCallbacks.RootFolder, "document.html")))
{
document.Save(stream, options);
}
//手动将数据附加到 CSS 流
using (var writer = new StreamWriter(savingCallbacks.CssStream))
{
writer.WriteLine();
writer.WriteLine("/* This line is appended to stream manually by user */");
}
}
在这里,我们演示如何使用用户定义的回调管理的资源将 OneNote 文档保存为 HTML 格式。
结论
在本文中,我们探讨了如何使用 Aspose.Note for .NET 处理 OneNote 文档并将其保存为 HTML 格式。通过遵循分步指南,您可以轻松地
将此功能集成到您的 .NET 应用程序中,使您能够高效地操作 OneNote 文件。
常见问题解答
Q1:我可以自定义保存的 HTML 文件的外观吗?
A1:是的,您可以通过修改转换过程中生成的 CSS 样式表来自定义外观。
Q2:Aspose.Note是否支持转换为HTML以外的其他格式?
A2:是的,Aspose.Note 支持转换为各种格式,例如 PDF、图像和 Microsoft Word 文档。
Q3:Aspose.Note 与.NET Core 应用程序兼容吗?
A3:是的,Aspose.Note 与 .NET Framework 和 .NET Core 应用程序兼容。
Q4:我可以使用Aspose.Note从OneNote文档中提取文本和图像吗?
A4:是的,您可以使用 Aspose.Note API 提取文本和图像以及执行各种其他操作。
Q5:是否有试用版可用于测试Aspose.Note 功能?
A5:是的,您可以从以下位置下载免费试用版:这里.