1. Produk
  2.   Aspose.Page
  3.   Aspose.Page FOSS for Python

Aspose.Page FOSS untuk Python

Percuma, perpustakaan Python berlesen MIT untuk mengeksport dokumen PS, EPS, dan XPS sebagai PDF dan imej raster. Tidak memerlukan Office.

Perpustakaan Python Sumber Terbuka untuk Penukaran PS, EPS, dan XPS

Aspose.Page FOSS for Python adalah perpustakaan percuma, sumber terbuka untuk menukar PostScript (PS), Encapsulated PostScript (EPS), dan dokumen XPS dalam aplikasi Python. Pasang ia dengan a perintah pip install aspose-page-foss tunggal dan mulakan mengeksport dokumen ke PDF dan imej raster tanpa sebarang runtime proprietari atau kebergantungan sistem.

Perpustakaan ini memaparkan API bersih yang dibina di sekitar PsDocument dan XpsDocument. Muatkan dokumen dengan from_file() atau from_bytes(), kemudian panggil to_pdf() untuk mendapatkan aliran bait PDF, atau to_image() dengan contoh ImageSaveOptions untuk merender ke PNG atau JPEG pada DPI yang ditentukan. Pelayan MCP pilihan memaparkan ps_to_pdf, ps_to_image, xps_to_pdf, dan xps_to_image sebagai alat penukaran jauh menggunakan FastMCP.

Kerana perpustakaan ini tidak mempunyai kebergantungan pada perpustakaan Office asli atau Ghostscript, ia berfungsi secara identik pada Windows, Linux, dan macOS, termasuk pelari CI dan kontena Docker. Itu codebase berlesen MIT dan dihoskan di GitHub. Pemaju yang memerlukan API komersial penuh boleh menggunakan Aspose.Page untuk Python bersama sumber terbuka ini. Untuk keluarga produk perusahaan, lihat Aspose.Page — Enterprise Product Family.

Tukar Dokumen PS dan EPS

  • PS to PDF: Panggil PsDocument.from_file() kemudian to_pdf() untuk mengeksport dokumen sebagai PDF byte array.
  • EPS to PDF: PsDocument.from_file() menerima kedua-dua .ps dan .eps sambungan fail.
  • PS/EPS kepada imej: Hantar satu ImageSaveOptions(format="png", dpi=150) kepada to_image() untuk output PNG atau JPEG.
  • Pemprosesan dalam memori: Semua penukaran mengembalikan bytes — tiada fail sementara diperlukan.
  • Dari bait: Gunakan PsDocument.from_bytes() untuk memproses data PS/EPS dari aliran rangkaian atau muat naik.

Di mana Penukaran PS/EPS Digunakan

  • Saluran dokumen: Eksport laporan PostScript warisan ke PDF untuk penyimpanan atau pengedaran.
  • Alur kerja cetakan: Menukar output PS daripada pemacu cetak menjadi pratonton PDF atau imej.
  • Pemprosesan aset EPS: Rasterkan ilustrasi EPS ke PNG untuk penggunaan web atau dokumentasi.
  • Automasi kelompok: Proses direktori fail PS/EPS dalam CI atau kerja cron tanpa GUI.

Tukar Dokumen XPS

  • XPS to PDF: Panggil XpsDocument.from_file() kemudian to_pdf() untuk mengeksport fail XPS sebagai PDF byte array.
  • XPS ke imej: Panggil to_image() dengan ImageSaveOptions untuk memaparkan halaman XPS ke PNG atau JPEG.
  • Dari bait: Gunakan XpsDocument.from_bytes() untuk data XPS dalam memori daripada muat naik atau aliran.
  • Akses halaman: Gunakan add_page(), get_page(), dan remove_page() untuk bekerja dengan halaman individu.
  • Pembacaan pakej XPS: Gunakan XpsPackage.from_file() untuk memeriksa bahagian mentah pakej XPS.

Di mana Penukaran XPS Digunakan

  • Spool cetakan Windows: Eksport fail spool XPS dari subsistem cetakan Windows ke PDF atau imej.
  • Pengarkiban dokumen: Transformasikan fail XPS kepada PDF yang boleh dibaca secara universal untuk penyimpanan jangka panjang.
  • Penjanaan pratonton: Render halaman XPS ke thumbnail PNG untuk sistem pengurusan dokumen.
  • Penggunaan rentas platform: Proses fail XPS pada pelayan Linux dan macOS di mana penonton asli tidak tersedia.

Pelayan MCP untuk Penukaran Jarak Jauh

  • Pendedahan Alat: create_server() mendaftar ps_to_pdf, ps_to_image, xps_to_pdf, dan xps_to_image sebagai alat MCP melalui FastMCP.
  • metadata EPS: Alat eps_metadata mengekstrak kotak sempadan dan medan tajuk DSC daripada fail EPS.
  • Input/output types: McpInput menerima laluan fail atau bait yang dienkod base64; McpOutput mengembalikan bait base64 atau menulis ke laluan.
  • Pilihan penukaran: McpConversionOptions mengawal format output dan DPI untuk penukaran imej.
  • Kebergantungan pilihan: FastMCP diperlukan hanya untuk hosting pelayan MCP; penukaran teras berfungsi tanpa ia.

Kes Penggunaan MCP

  • AI agent pipelines: Dedahkan penukaran dokumen sebagai alat yang boleh dipanggil oleh Claude atau ejen lain yang serasi MCP.
  • Microservices: Jalankan perkhidmatan penukaran ringan yang menerima PS/EPS/XPS melalui HTTP.
  • Plugin IDE: Menyediakan fungsi penukaran kepada editor yang menyokong pelayan alat MCP.
  • Automasi aliran kerja: Integrasikan penukaran ke dalam n8n atau platform automasi kod rendah yang serupa.

Render Model dan Output PDF

  • RenderModelBuilder: Bina satu RenderDocument dengan begin_page(), add_path(), add_text(), add_image(), dan end_page().
  • PdfWriter: Hantar satu contoh PdfMetadata dan panggil write(doc) untuk menghasilkan tatasusunan bait PDF daripada mana-mana RenderDocument.
  • PdfMetadata: Tetapkan title, creator, producer, creation_date, dan trapped medan pada PDF output.
  • RasterRenderer: Jana RenderDocument kepada RasterSurface; enkod dengan encode_png() atau encode_bmp().
  • Pengekodan Unicode: Lapisan output PDF menulis teks Unicode berbilang skrip termasuk CJK dan Cyrillic.

Kes Penggunaan Rendering Peringkat Rendah

  • Penjanaan PDF Tersuai: Bina halaman dengan laluan vektor, teks, dan imej tanpa fail PS/XPS antara peringkat.
  • Ujian pixel-perfect: Gunakan RasterRenderer untuk merender dokumen dan membandingkan output piksel dalam ujian automatik.
  • Penyematan fon: Tanam fon TrueType menggunakan FontResolver dan build_embedded_font() untuk rendering yang betul.
  • Pengurusan warna: Gunakan objek Paint dengan ruang warna DeviceRGB atau ruang warna berasaskan CIE kepada laluan dan teks.

Tukar PS ke PDF

Panggil PsDocument.from_file() untuk mengakses fail PostScript dan panggil to_pdf() untuk mengeksportnya sebagai aliran bait 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)

Tukar EPS ke PNG

Kelas PsDocument yang sama mengendalikan fail EPS. Hantar satu ImageSaveOptions dengan format dan DPI yang dikehendaki kepada 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)

Tukar XPS ke PDF

Panggil XpsDocument.from_file() untuk mengakses dokumen XPS dan panggil to_pdf() untuk mengeksportnya sebagai aliran bait 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)

Soalan Lazim

Lesen apa yang digunakan oleh Aspose.Page FOSS untuk Python?

Aspose.Page FOSS untuk Python dikeluarkan di bawah MIT License, membenarkan penggunaan dalam aplikasi komersial dan proprietari.

Adakah terdapat sebarang kebergantungan asli?

Tidak. Perpustakaan ini tidak bergantung pada Ghostscript, Adobe Reader, atau mana-mana runtime asli. Ia berjalan pada Windows, Linux, dan macOS.

Format input mana yang disokong oleh perpustakaan?

Perpustakaan ini membaca fail PostScript (.ps), Encapsulated PostScript (.eps), dan XPS (.xps).

Format output apa yang dihasilkan oleh perpustakaan?

Perpustakaan ini mengeksport ke PDF melalui to_pdf() dan ke imej raster PNG atau JPEG melalui to_image() dengan ImageSaveOptions.

Bolehkah saya memproses fail dalam memori tanpa I/O cakera?

Ya. Gunakan from_bytes() untuk memuatkan dari bait mentah dan bait yang dikembalikan dari to_pdf() atau to_image() secara langsung tanpa menulis fail.

  

Sokongan dan Sumber Pembelajaran

 Bahasa Melayu