Въведение

PostScript (PS) и Encapsulated Post Script (EPS), са векторни формати на документи, използвани в Издаване на графични системи и графически тръбопроводи. Aspose. Python предоставя: PsDocument един клас, който обработва и двете. .ps и в) .eps файлове с методи за изнасяне на PDF или растерни изображения директно от Python код.

Библиотеката не изисква инсталиране на Ghostscript, няма Adobe runtime и няма местни зависимости от системата. Тя работи върху Windows, Linux и macOS. Инсталирайте я с pip и го използвайте незабавно в всяка Python 3.10 + среда.


Зареждане на PS и EPS файлове

PsDocument разкрива два метода за класове за зареждане на документ. from_file() чете от “а” път на файла; from_bytes() приема сурови байтове от поток или качване.

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)

Съветът на ЕС is_eps Доклади за собственост True ако документът е EPS файл, който е полезен когато: обработка на смесени партиди от PS и EPS файлове чрез един и същи кодов път.


Износ към PDF

Обади се. to_pdf() на товарен пътник. PsDocument да се получи изходът като bytes Предметът. резултатът е валиден PDF байт поток, който може да бъде записан на диск или съхранен в база данни; или връщане от HTTP крайна точка.

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)

Не е необходим обект на опции за износ по подразбиране. to_pdf() Методът приема един параметър за опции при напреднали случаи на употреба.


Износ на растрирани изображения

За да направите PS или EPS документ на растерно изображение, прехвърлете ImageSaveOptions В случай на: to_image().- Настройка. format в) към "png" или с други: "jpeg" и в) dpi за контрол на разделителната способност. Методът връща a. bytes обект, съдържащ кодираното изображение.

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, промяна format="jpeg".- Да, това е. dpi свойството се заменя на 96 при несъздаване.


Четене на метаданни за EPS

PsDocument излага на опасността от dsc свойство, което връща а DscMetadata при DSC: коментарите са налице в досието. DscMetadata осигурява структуриран достъп до граничната кутия; координати, размер на страницата, ориентация, заглавие и полета за създатели, анализирани от 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)
    print("HiRes bounding box:", dsc.hires_bounding_box)

Бач конверсия

Тъй като всички методи за преобразуване връщат bytes и приемат като вход файлови пътища или сурови байтове, batch обработка е пряко да се прилагат със стандартни Python петна или 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)

Същият модел се прилага за EPS файлове чрез промяна на глобален шаблон към: "*.eps".


Започваме

Свързани ресурси