EPUB 到 PDF 轉換

電子書是技術如何改變我們日常生活的一個例子。您可以輕鬆閱讀和分享 EPUB 文件形式的電子書。但是,由於 PDF 文件格式的優勢,有時您可能更願意將 EPUB 轉換為 PDF 文件。例如,您可以對 PDF 文件進行數字簽名、加密或密碼保護。在本文中,我們將使用以下用例將文件從 EPUB 格式轉換為 PDF 格式:

我們將使用 Aspose.HTML for .NET API 執行所有這些轉換。您可以申請 30 天的免費 試用許可 來全面測試 API。此外,您只需從 NuGet gallery 安裝即可配置 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 文件格式。

相關帖子