常见问题

许可与开源

Aspose.Page FOSS for Python 使用什么许可证?

Aspose.Page FOSS for Python 在 MIT 许可证下发布。完整的许可证文本可在 GitHub 仓库中的 LICENSE 文件中找到。

我可以在商业产品中使用它吗?

是的。MIT 许可证允许在专有和商业应用中使用,而无需您将自己的代码开源。

有免费试用或使用限制吗?

没有。该库在 MIT 许可证下完全免费,没有使用限制、没有水印,也没有时间限制。


安装与要求

如何为 Python 安装 Aspose.Page FOSS?

使用以下命令进行安装:

pip install aspose-page-foss

需要哪个 Python 版本?

需要 Python 3.10 或更高版本。

是否有任何本地依赖?

没有。该库不依赖 Ghostscript、Adobe Reader 或任何其他本地运行时。它可在 Windows、Linux 和 macOS 上运行,无需额外的系统软件包。


格式支持

该库支持哪些输入格式?

该库读取 PostScript(.ps)、封装的 PostScript(.eps)以及 XML 纸张规范(.xps)文件。

该库生成哪些输出格式?

该库可导出为 PDF(通过 to_pdf())以及 PNG 或 JPEG 栅格图像(通过 to_image() 与 ImageSaveOptions)。

该库能从头创建 PS 或 XPS 文件吗?

PsDocument 提供 create() 和 add_page() 方法用于构建新的 PS 文档,XpsDocument 提供 create() 和 add_page() 用于 XPS。使用 PsDocument.save() 或 XpsDocument.save() 写入结果。


API Usage

如何将 PS 文件转换为 PDF?

from pathlib import Path
from aspose.page.ps.document import PsDocument

ps = PsDocument.from_file("input.ps")
Path("output.pdf").write_bytes(ps.to_pdf())

如何将 EPS 文件转换为 PNG?

from pathlib import Path
from aspose.page.ps.document import PsDocument
from aspose.page.ps.output import ImageSaveOptions

eps = PsDocument.from_file("input.eps")
opts = ImageSaveOptions(format="png", dpi=150)
Path("output.png").write_bytes(eps.to_image(opts))

如何将 XPS 文件转换为 PDF?

from pathlib import Path
from aspose.page.xps.document import XpsDocument

xps = XpsDocument.from_file("input.xps")
Path("output.pdf").write_bytes(xps.to_pdf())

在转换之前,如何读取 EPS 元数据?

from aspose.page.ps.document import PsDocument

eps = PsDocument.from_file("illustration.eps")
dsc = eps.dsc
if dsc is not None:
    print("Title:", dsc.title)
    print("Bounding box:", dsc.bounding_box)

如何在不进行磁盘 I/O 的情况下从内存处理文件?

使用 from_bytes() 从原始字节加载,并直接使用从 to_pdf() 或 to_image() 返回的 bytes:

from aspose.page.ps.document import PsDocument

def convert_ps_bytes(ps_data: bytes) -> bytes:
    return PsDocument.from_bytes(ps_data).to_pdf()

已知限制

该库是否支持所有 PostScript 功能?

该库实现了文档转换所需的常见 PostScript 操作符。使用高级 Level 3 功能或自定义过程的高度专业化 PostScript 程序可能无法与 Ghostscript 完全相同地渲染。

是否支持对 XPS 页面内容的写入?

XpsDocument 支持 add_page()、remove_page() 和 get_page() 用于页面结构管理。通过 RenderModelBuilder 和 PdfWriter 组件可以进行低层次的 XPS 内容绘制。


另请参阅

 中文