电子书是技术如何改变我们日常生活的一个例子。您可以以 EPUB 文件的形式轻松阅读和分享电子书。但是,由于 PDF 文件格式的优势,有时您可能更喜欢将 EPUB 转换为 PDF 文件。例如,您可以对 PDF 文件进行数字签名、加密或密码保护。在本文中,我们将使用以下用例将文件从 EPUB 转换为 PDF 格式:
我们将使用 Aspose.HTML for .NET API 执行所有这些转换。您可以申请免费 30 天 试用许可证 以测试 API 的全部功能。此外,您只需从 NuGet 库 安装即可配置 API。让我们继续讨论 EPUB 文件转换场景:
使用 C# 将 EPUB 转换为 PDF
您可以按照以下步骤将 EPUB 转换为 PDF:
- 加载输入 EPUB 文件
- 初始化 PdfSaveOptions 类的对象
- 调用 ConvertEPUB 方法
这些步骤之后是下面的代码片段,它显示了如何使用 C# 将 EPUB 转换为 PDF:
// 打开现有的 EPUB 文件进行阅读。
using (var stream = System.IO.File.OpenRead(dataDir + "Sample.epub"))
{
Aspose.Html.Saving.PdfSaveOptions options = new Aspose.Html.Saving.PdfSaveOptions();
// 调用 ConvertEPUB 方法将 EPUB 转换为 PDF
Aspose.Html.Converters.Converter.ConvertEPUB(stream, options, dataDir + "EPUBtoPDF.pdf");
}
结果,以高质量和高保真度渲染创建 PDF 文件。而且,生成的PDF文件的大小也是合理的。您可以比较以下屏幕截图来比较文件的渲染质量:
输入 EPUB 文件预览
输出 PDF 文件预览
您会注意到,即使是很小的细节在两个文件中也很明显。因此,它充分说明了使用 Aspose.HTML for .NET API 将 EPUB 导出为 PDF 文件的能力。
使用 C# 将 EPUB 转换为带有密码保护的 PDF
我们已经学习了 EPUB 文件到 PDF 的基本转换。让我们继续将 EPUB 导出为受密码保护和加密的 PDF 文档。您需要按照以下步骤为输出 PDF 文档设置用户和所有者密码的加密:
- 加载输入 EPUB 文件
- 使用必要的参数初始化 PdfEncryptionInfo 对象
- 实例化 PdfSaveOptions 类的对象
- 从 EPUB 转换为 PDF
下面的代码片段使用指定的加密例程和相应的密码将 EPUB 转换为 PDF。
using (var stream = System.IO.File.OpenRead(dataDir + "Sample.epub"))
{
// 创建 PdfEncryptionInfo 的实例
Aspose.Html.Rendering.Pdf.Encryption.PdfEncryptionInfo info = new Aspose.Html.Rendering.Pdf.Encryption.PdfEncryptionInfo("user" , "owner" , Aspose.Html.Rendering.Pdf.Encryption.PdfPermissions.AssembleDocument, Aspose.Html.Rendering.Pdf.Encryption.PdfEncryptionAlgorithm.RC4_128);
// 创建 PdfSaveOptions 的实例
var options = new Aspose.Html.Saving.PdfSaveOptions();
options.Encryption = info;
// 调用 ConvertEPUB 方法将 EPUB 转换为 PDF。
Aspose.Html.Converters.Converter.ConvertEPUB(stream, options, dataDir + "EPUBpasswordPDF.pdf");
}
下面的屏幕截图显示了我们在代码中设置的 PDF 文档的不同属性。为方便起见,此屏幕截图上已标记了相应的属性。
使用 C# 使用页面设置将 EPUB 转换为 PDF
首先,这里的页面设置术语是指设置页面大小、页边距和背景颜色。 Aspose.HTML for .NET API 让您可以完全控制文件转换过程。您可以根据您的要求指定 PDF 文档的输出要求。在此示例中,我们将按照以下步骤设置一些与页面相关的属性:
- 加载输入 EPUB 文件
- 实例化 PdfSaveOptions 对象
- 设置页面大小和页边距
- 设置页面的背景颜色
- 转换为 PDF 文件
以下代码片段显示了如何使用 C# 将 EPUB 转换为 PDF,它基于上面列出的步骤:
// 打开现有的 EPUB 文件进行阅读。
using (var stream = System.IO.File.OpenRead(dataDir + "Sample.epub"))
{
// 创建具有自定义页面大小、边距和背景颜色的 PdfSaveOptions 实例。
var options = new Aspose.Html.Saving.PdfSaveOptions()
{
PageSetup =
{
AnyPage = new Aspose.Html.Drawing.Page()
{
Size = new Aspose.Html.Drawing.Size(Aspose.Html.Drawing.Length.FromInches(12), Aspose.Html.Drawing.Length.FromInches(10)),
Margin = new Aspose.Html.Drawing.Margin(Aspose.Html.Drawing.Length.FromInches(1),Aspose.Html.Drawing.Length.FromInches(1),Aspose.Html.Drawing.Length.FromInches(1),Aspose.Html.Drawing.Length.FromInches(1))
}
},
BackgroundColor = System.Drawing.Color.AliceBlue,
};
// 调用 ConvertEPUB 方法将 EPUB 转换为 PDF。
Aspose.Html.Converters.Converter.ConvertEPUB(stream, options, dataDir + "PageSetup.pdf");
}
结论
我们已经了解了将 EPUB 转换为 PDF 文档的不同可能性。这些用例有助于保护电子书,因为它们的在线状态将变得更加安全,因为搜索引擎无法以任何方式访问加密的 PDF 文件及其元数据。可能还有许多其他优点,可能需要转换 EPUB 文件格式。