EPUB转PDF

电子书是技术如何改变我们日常生活的一个例子。您可以以 EPUB 文件的形式轻松阅读和分享电子书。但是,由于 PDF 文件格式的优势,有时您可能更喜欢将 EPUB 转换为 PDF 文件。例如,您可以对 PDF 文件进行数字签名、加密或密码保护。在本文中,我们将使用以下用例将文件从 EPUB 转换为 PDF 格式:

我们将使用 Aspose.HTML for .NET API 执行所有这些转换。您可以申请免费 30 天 试用许可证 以测试 API 的全部功能。此外,您只需从 NuGet 库 安装即可配置 API。让我们继续讨论 EPUB 文件转换场景:

使用 C# 将 EPUB 转换为 PDF

您可以按照以下步骤将 EPUB 转换为 PDF:

  1. 加载输入 EPUB 文件
  2. 初始化 PdfSaveOptions 类的对象
  3. 调用 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 文件预览

EPUB 转 PDF

输出 PDF 文件预览

将 EPUB 转换为 PDF

您会注意到,即使是很小的细节在两个文件中也很明显。因此,它充分说明了使用 Aspose.HTML for .NET API 将 EPUB 导出为 PDF 文件的能力。

使用 C# 将 EPUB 转换为带有密码保护的 PDF

我们已经学习了 EPUB 文件到 PDF 的基本转换。让我们继续将 EPUB 导出为受密码保护和加密的 PDF 文档。您需要按照以下步骤为输出 PDF 文档设置用户和所有者密码的加密:

  1. 加载输入 EPUB 文件
  2. 使用必要的参数初始化 PdfEncryptionInfo 对象
  3. 实例化 PdfSaveOptions 类的对象
  4. 从 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 文档的输出要求。在此示例中,我们将按照以下步骤设置一些与页面相关的属性:

  1. 加载输入 EPUB 文件
  2. 实例化 PdfSaveOptions 对象
  3. 设置页面大小和页边距
  4. 设置页面的背景颜色
  5. 转换为 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 文件格式。

相关帖子