用 Python 将 EPUB 转换为 PDF
EPUB 是一种基于 XML 的开放式数字图书和出版物格式,专为在各种设备上实现最佳浏览效果而设计。它由国际数字出版论坛( IDPF)创建,现在已得到许多电子阅读器和软件应用程序的支持。要利用 PDF 格式的优势,通常需要将 EPUB 转换为 PDF。使用 Aspose.HTML for Python via .NET,您可以通过编程将 EPUB 转换为 PDF,并完全控制各种转换参数。
本文将介绍如何使用转换器类的 convert_epub()方法将EPUB转换为PDF,以及如何应用 PdfSaveOptions。
要继续学习本教程,请在 Python 项目中 通过 .NET 安装和配置 Aspose.HTML for Python。
在线 EPUB 转换器
您可以通过 .NET API 功能检查 Aspose.HTML for Python 并实时转换 EPUB。请从本地文件系统或 URL 加载 EPUB 文件,选择输出格式并运行示例。在示例中,保存选项是默认设置。您将立即收到一个单独文件的结果。
如果你想使用 “PdfSaveOptions “以编程方式将 EPUB 转换为 PDF,请参阅以下 Python 代码示例。
将 EPUB 转换为 PDF
使用 convert_epub()方法是将EPUB文件转换成各种格式的最常见方法。要将 EPUB 转换为 PDF,应遵循以下几个步骤:
- 打开现有 EPUB 文件。在示例中,我们使用 open() 方法从指定路径的文件系统中打开并读取 EPUB 文件。
- 创建 PdfSaveOptions 类的实例,并指定所需的保存选项。
- 使用 Converter 类的 convert_epub() 方法之一将 EPUB 保存为 PDF 文件。在下面的示例中,你需要将 EPUB 文件流、“PdfSaveOptions “和输出文件路径传递给 “convert_epub()"。
下面的示例展示了如何使用 PdfSaveOptions,创建带有自定义保存选项的 PDF 文件:
1# Convert EPUB to PDF using Python with custom settings
2
3import os
4import aspose.html.converters as conv
5import aspose.html.saving as sav
6import aspose.html.drawing as dr
7
8# Setup directories and define paths
9output_dir = "output/"
10input_dir = "data/"
11os.makedirs(output_dir, exist_ok=True)
12
13document_path = os.path.join(input_dir, "input.epub")
14save_path = os.path.join(output_dir, "epub-to-pdf.pdf")
15
16# Open an existing EPUB file for reading
17with open(document_path, "rb") as stream:
18
19 # Create an instance of PdfSaveOptions
20 options = sav.PdfSaveOptions()
21 options.page_setup.any_page = dr.Page(dr.Size(800, 600), dr.Margin(10, 10, 10, 10))
22 options.css.media_type.PRINT
23
24 # Convert EPUB to PDF
25 conv.Converter.convert_epub(stream, options, save_path)在本例中,我们从指定路径的文件系统中打开并读取源文件。PdfSaveOptions() 构造函数初始化了一个PdfSaveOptions类实例,并将其传递给 convert_epub() 方法,该方法接收数据流、选项、输出文件路径save_path并执行转换操作。PdfSaveOptions类提供了大量属性,可以让你完全控制各种参数,并改善EPUB到PDF格式的转换过程。在本例中,我们使用了 page_setup 和 css.media_type 属性。
保存选项 – PdfSaveOptions 类
Aspose.HTML for Python via .NET 提供了 PdfSaveOptions类,使您可以对如何以 PDF 格式保存文档进行更多控制。该类的某些属性继承了基类的属性,如 PdfRenderingOptions 或 RenderingOptions。下面是 “PdfSaveOptions “中可用属性的说明:
- page_setup – 该属性提供对 PageSetup 对象的访问,该对象用于配置输出 PDF 页面的布局和设置,以适应特定的打印或显示要求。
- jpeg_quality – 该属性决定嵌入 PDF 文档的图像所使用的 JPEG 压缩质量。默认质量设置为 95,在图像保真度和文件大小之间取得了良好的平衡。通过设置此属性,您可以根据具体需要优化文件大小或图像质量。
- encryption – 该属性提供有关 PDF 文档加密的详细信息,包括密码保护和权限设置。如果未配置该属性,则不会应用加密,但设置该属性可以安全地分发和控制对敏感 PDF 内容的访问。
- horizontal_resolution – 该属性控制处理过程中使用的内部图像和 HTML 中包含的任何外部图像的水平分辨率。默认设置为 300 dpi。
- vertical_resolution – 与 horizontal_resolution 类似,该属性管理 PDF 生成过程中内部和外部图像的垂直分辨率。与水平分辨率一样,它的默认值也是 300 dpi。
- background_color – 该属性设置或检索填充每个 PDF 文档页面的背景颜色。默认值为透明色,但可根据品牌或审美偏好进行自定义,以确保所有页面的一致性。
- css – 该属性使用一个
CssOptions对象来配置在 HTML 转换为 PDF 的过程中对 CSS 属性的处理。它允许精确控制如何在生成的 PDF 中解释和应用 HTML 中的样式。 - document_info – 该属性包含有关输出 PDF 文档的元数据和信息,如标题、作者、主题和关键字。这些元数据有助于文档管理、索引编制和可搜索性,使 PDF 文件内容更丰富、更有条理。
- form_field_behaviour – 该属性指定生成的 PDF 中交互式表单字段的行为。
- is_tagged_pdf – 设置为
true时,将在 PDF 文档中创建标记布局,从而提高残疾用户的可访问性。这可确保内容结构合理,可使用辅助技术进行导航,并符合可访问性标准。
另见
下载 Aspose.HTML for Python via .NET库,即可成功、快速、轻松地将 HTML、MHTML、EPUB、SVG 和 Markdown 文档转换为最流行的格式。
您可以从 GitHub 下载完整的示例和数据文件。
Aspose.HTML提供了一个免费的在线 EPUB到PDF转换器,高品质,方便,快捷地转换EPUB到PDF。只需上传,转换您的文件,并在几秒钟内得到结果!
