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".