Bevezetés

A PostScript (PS) és az Encapsulated Post Script (EPS), a következőkben használt vektoros dokumentumformátumok: nyomtatási munkafolyamatok, régimódi kiadói rendszerek és grafikus csővezetékek. Aspose. Python biztosítja: PsDocument Egyetlen osztály, amely mindkettőt kezel .ps és a következők: .eps fájlok módszerekkel, hogy PDF-be vagy raszterképekhez exportálhassa őket közvetlenül a Python kódból.

A könyvtár nem igényel Ghostscript telepítést, sem Adobe futási időt és sem eredeti rendszerfüggőségeket. Windowson, Linuxon és macOS-on működik. PIP-tel kell beépíteni és azonnal használni bármely Python 3.10+ környezetben.


PS és EPS fájlok betöltése

PsDocument A dokumentum betöltésének két osztálymódszere. from_file() A “A” pontból olvasható. fájl útvonal; from_bytes() a stream vagy az upload nyers bájtjait fogadja el.

from aspose.page.ps.document import PsDocument

# Load from file path
ps = PsDocument.from_file("document.ps")
eps = PsDocument.from_file("illustration.eps")

# Load from bytes (network stream, upload, etc.)
with open("document.ps", "rb") as f:
    data = f.read()
ps_from_bytes = PsDocument.from_bytes(data)

A Bizottság is_eps ingatlan-visszatérítések True ha a dokumentum egy EPS fájl, ami hasznos akkor, amikor: a PS- és EPS-fájlok keverékcsomagjának ugyanazon kódútvonalon történő feldolgozása.


PDF-be exportálás

Hívj! to_pdf() egy töltött gépen. PsDocument a kimenetel egy bytes A tárgy. az eredmény egy érvényes PDF-bitéz áram, amelyet le lehet írni a lemezen vagy tárolni adatbázisban; vagy egy HTTP végpontból érkezett.

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

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

Az alapértelmezett PDF exporthoz nem szükséges opciós objektum. to_pdf() A módszer elfogadja a a fejlett felhasználási esetek opcionális paramétere.


Raszter képek exportálása

A PS vagy EPS dokumentum raszter kép megjelenítéséhez egy ImageSaveOptions példát a to_image().- Megállt. format a … "png" vagy a következő: "jpeg" és a következők: dpi a kimeneti felbontás szabályozására. A módszer a: bytes a kódolt képet tartalmazó tárgy.

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

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

JPEG kimeneti változat format="jpeg".A… a… dpi a 96-ra való beállítása nem indokolt.


EPS-metadatok olvasása

PsDocument a dsc tulajdonság, amely a DscMetadata Például, ha a DSC-t a megjegyzések szerepelnek az iratban. DscMetadata strukturált hozzáférést biztosít a határoló dobozhoz. koordináták, oldalméret, iránymutatás, cím és alkotó mezők az EPS fejlécből.

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)
    print("HiRes bounding box:", dsc.hires_bounding_box)

Sorozatkonverzió

Mivel minden konverziós módszer visszatér a bytes és befogadja a fájlútokat vagy az eredeti bájtokat, a tételfeldolgozás közvetlenül szabványos Python-kötözetek alkalmazásával történik, vagy concurrent.futures.

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

input_dir = Path("ps-files")
output_dir = Path("pdf-output")
output_dir.mkdir(exist_ok=True)

for ps_file in input_dir.glob("*.ps"):
    doc = PsDocument.from_file(str(ps_file))
    out_path = output_dir / ps_file.with_suffix(".pdf").name
    out_path.write_bytes(doc.to_pdf())
    print("Converted:", ps_file.name)

Ugyanez a minta vonatkozik az EPS fájlokra, ha megváltoztatjuk a glob mintát: "*.eps".


Kezdjük!

Kapcsolatos erőforrások