Aspose.Page FOSS for Python 是一个免费、开源的库,用于转换 PostScript (PS),
在 Python 应用程序中使用 Encapsulated PostScript (EPS) 和 XPS 文档。使用 a 安装它。
单个 pip install aspose-page-foss 命令并开始将文档导出为 PDF 并
光栅图像,无需任何专有运行时或系统依赖。
该库提供了围绕 PsDocument 和 XpsDocument 构建的简洁 API。加载文档
使用 from_file() 或 from_bytes(),然后调用 to_pdf() 以获取 PDF 字节流,或
to_image() 与 ImageSaveOptions 实例一起使用,以在指定 DPI 下渲染为 PNG 或 JPEG。
可选的 MCP 服务器公开 ps_to_pdf、ps_to_image、xps_to_pdf 和 xps_to_image
作为使用 FastMCP 的远程转换工具。
因为该库不依赖本机 Office 库或 Ghostscript,所以它可以运行。 在 Windows、Linux 和 macOS 上完全相同,包括 CI 运行器和 Docker 容器。该 代码库采用 MIT 许可证并托管在 GitHub 上。需要完整商业 API 的开发者 可以将 Aspose.Page 用于 Python,并结合这些开源资源。有关企业产品系列,请参见 Aspose.Page — Enterprise Product Family。
PsDocument.from_file() 然后 to_pdf() 将文档导出为 PDF 字节数组。PsDocument.from_file() 接受 .ps 和 .eps 文件扩展名。ImageSaveOptions(format="png", dpi=150) 传递给 to_image() 以获取 PNG 或 JPEG 输出。bytes — 无需临时文件。PsDocument.from_bytes() 来处理来自网络流或上传的 PS/EPS 数据。XpsDocument.from_file() 然后 to_pdf() 将 XPS 文件导出为 PDF 字节数组。to_image() 并使用 ImageSaveOptions 将 XPS 页面渲染为 PNG 或 JPEG。XpsDocument.from_bytes() 来处理来自上传或流的内存 XPS 数据。add_page()、get_page() 和 remove_page() 来处理单个页面。XpsPackage.from_file() 检查原始 XPS 包部件。create_server() 将 ps_to_pdf、ps_to_image、xps_to_pdf 和 xps_to_image 注册为通过 FastMCP 的 MCP 工具。eps_metadata 工具从 EPS 文件中提取边界框和 DSC 标头字段。McpInput 接受文件路径或 base64 编码的字节; McpOutput 返回 base64 字节或写入路径。McpConversionOptions 控制图像转换的输出格式和 DPI。RenderDocument,使用 begin_page()、add_path()、add_text()、add_image() 和 end_page()。PdfMetadata 实例并调用 write(doc),即可从任意 RenderDocument 生成 PDF 字节数组。title、creator、producer、creation_date 和 trapped 字段。RenderDocument 渲染为 RasterSurface;使用 encode_png() 或 encode_bmp() 编码。RasterRenderer 渲染文档并在自动化测试中比较像素输出。FontResolver 和 build_embedded_font() 嵌入 TrueType 字体,以实现正确的渲染。Paint 对象与 DeviceRGB 或基于 CIE 的颜色空间应用于路径和文本。调用 PsDocument.from_file() 以访问 PostScript 文件,并调用 to_pdf() 将其导出为 PDF 字节流。
from pathlib import Path
from aspose.page.ps.document import PsDocument
ps = PsDocument.from_file("input.ps")
output_pdf = ps.to_pdf()
Path("output.pdf").write_bytes(output_pdf)
相同的 PsDocument 类处理 EPS 文件。将具有所需格式和 DPI 的 ImageSaveOptions 传递给 to_image()。
from aspose.page.ps.document import PsDocument
from aspose.page.ps.output import ImageSaveOptions
eps = PsDocument.from_file("input.eps")
output_png = eps.to_image(ImageSaveOptions(format="png", dpi=150))
with open("output.png", "wb") as f:
f.write(output_png)
调用 XpsDocument.from_file() 以访问 XPS 文档,并调用 to_pdf() 将其导出为 PDF 字节流。
from pathlib import Path
from aspose.page.xps.document import XpsDocument
xps = XpsDocument.from_file("input.xps")
output_pdf = xps.to_pdf()
Path("output.pdf").write_bytes(output_pdf)
Aspose.Page FOSS for Python 在 MIT License 下发布,允许在商业和专有应用中使用。
不。该库不依赖 Ghostscript、Adobe Reader 或任何本地运行时。它可在 Windows、Linux 和 macOS 上运行。
该库可以读取 PostScript (.ps)、Encapsulated PostScript (.eps) 和 XPS (.xps) 文件。
该库通过 to_pdf() 导出为 PDF,并通过 to_image() 在 ImageSaveOptions 下导出为 PNG 或 JPEG 栅格图像。
是的。使用 from_bytes() 从原始字节加载,并直接使用 to_pdf() 或 to_image() 返回的字节,而无需写入文件。