常见问题
许可与开源
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 内容绘制。