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

Aspose.Page FOSS dla Python

Darmowa, na licencji MIT biblioteka Python do eksportowania dokumentów PS, EPS i XPS jako PDF oraz obrazy rastrowe. Nie wymaga Office.

Biblioteka Open-Source Python do konwersji PS, EPS i XPS

Aspose.Page FOSS dla Python to darmowa, otwartoźródłowa biblioteka do konwertowania PostScript (PS), Encapsulated PostScript (EPS) i dokumenty XPS w aplikacjach Python. Zainstaluj go za pomocą a pojedyncze polecenie pip install aspose-page-foss i rozpocznij eksportowanie dokumentów do PDF i obrazy rastrowe bez żadnych własnościowych środowisk uruchomieniowych ani zależności systemowych.

Biblioteka udostępnia czyste API zbudowane wokół PsDocument i XpsDocument. Załaduj dokument z from_file() lub from_bytes(), a następnie wywołaj to_pdf(), aby uzyskać strumień bajtów PDF, lub to_image() z instancją ImageSaveOptions, aby renderować do PNG lub JPEG przy określonym DPI. Opcjonalny serwer MCP udostępnia ps_to_pdf, ps_to_image, xps_to_pdf i xps_to_image jako zdalne narzędzia konwersji używające FastMCP.

Ponieważ biblioteka nie ma zależności od natywnych bibliotek Office ani Ghostscript, działa. identycznie w systemach Windows, Linux i macOS, w tym w runnerach CI oraz kontenerach Docker. Ten kod źródłowy jest na licencji MIT i hostowany na GitHubie. Programiści, którzy potrzebują pełnego komercyjnego API można używać Aspose.Page do Python wraz z tymi zasobami open-source. Aby zobaczyć rodzinę produktów enterprise, zobacz Aspose.Page — Enterprise Product Family.

Konwertuj dokumenty PS i EPS

  • PS to PDF: Wywołaj PsDocument.from_file() następnie to_pdf(), aby wyeksportować dokument jako tablicę bajtów PDF.
  • EPS to PDF: PsDocument.from_file() akceptuje zarówno rozszerzenia plików .ps, jak i .eps.
  • PS/EPS to image: Przekaż ImageSaveOptions(format="png", dpi=150) do to_image() w celu uzyskania wyjścia PNG lub JPEG.
  • Przetwarzanie w pamięci: Wszystkie konwersje zwracają bytes — nie są wymagane pliki tymczasowe.
  • Z bajtów: Użyj PsDocument.from_bytes() do przetwarzania danych PS/EPS z strumienia sieciowego lub przesyłania.

Gdzie stosuje się konwersję PS/EPS

  • Potoki dokumentów: Eksportuj starsze raporty PostScript do PDF w celu archiwizacji lub dystrybucji.
  • Print workflows: Przekształć wyjście PS z sterowników drukarki w podglądy PDF lub obrazu.
  • Przetwarzanie zasobów EPS: Rasteryzuj ilustracje EPS do PNG do użytku w sieci lub dokumentacji.
  • Automatyzacja wsadowa: Przetwarzaj katalogi plików PS/EPS w zadaniach CI lub cron bez interfejsu graficznego.

Konwertuj dokumenty XPS

  • XPS to PDF: Wywołaj XpsDocument.from_file(), a następnie to_pdf(), aby wyeksportować plik XPS jako tablicę bajtów PDF.
  • XPS to image: Wywołaj to_image() z ImageSaveOptions, aby renderować strony XPS do PNG lub JPEG.
  • Z bajtów: Użyj XpsDocument.from_bytes() do danych XPS w pamięci pochodzących z przesyłek lub strumieni.
  • Dostęp do stron: Użyj add_page(), get_page() i remove_page(), aby pracować z poszczególnymi stronami.
  • Odczyt pakietu XPS: Użyj XpsPackage.from_file(), aby sprawdzić surowe części pakietu XPS.

Gdzie stosuje się konwersję XPS

  • Windows print spool: Eksportuj pliki kolejki XPS z podsystemu drukowania Windows do PDF lub obrazu.
  • Document archiving: Przekształć pliki XPS w powszechnie czytelny PDF do długoterminowego przechowywania.
  • Generowanie podglądu: Renderuj strony XPS do miniatur PNG dla systemów zarządzania dokumentami.
  • Użycie wieloplatformowe: Przetwarzaj pliki XPS na serwerach Linux i macOS, gdzie nie ma dostępnych natywnych przeglądarek.

Serwer MCP do zdalnej konwersji

  • Ekspozycja narzędzia: create_server() rejestruje ps_to_pdf, ps_to_image, xps_to_pdf i xps_to_image jako narzędzia MCP za pośrednictwem FastMCP.
  • Metadane EPS: Narzędzie eps_metadata wyodrębnia pola bounding box i nagłówka DSC z plików EPS.
  • Typy wejścia/wyjścia: McpInput akceptuje ścieżkę do pliku lub bajty zakodowane w base64; McpOutput zwraca bajty w base64 lub zapisuje do ścieżki.
  • Opcje konwersji: McpConversionOptions kontroluje format wyjściowy i DPI dla konwersji obrazów.
  • Opcjonalna zależność: FastMCP jest wymagany tylko do hostowania serwera MCP; podstawowa konwersja działa bez niego.

Zastosowania MCP

  • AI agent pipelines: Udostępnij konwersję dokumentów jako narzędzie wywoływalne przez Claude lub inne agenty zgodne z MCP.
  • Microservices: Uruchom lekki serwis konwersji akceptujący PS/EPS/XPS przez HTTP.
  • Wtyczki IDE: Udostępnij funkcję konwersji edytorom, które obsługują serwery narzędzi MCP.
  • Automatyzacja przepływu pracy: Zintegruj konwersję z n8n lub podobnymi platformami automatyzacji low-code.

Render Model i wyjście PDF

  • RenderModelBuilder: Zbuduj RenderDocument z begin_page(), add_path(), add_text(), add_image() i end_page().
  • PdfWriter: Przekaż instancję PdfMetadata i wywołaj write(doc), aby wygenerować tablicę bajtów PDF z dowolnego RenderDocument.
  • PdfMetadata: Ustaw pola title, creator, producer, creation_date i trapped w wyjściowym pliku PDF.
  • RasterRenderer: Renderuj RenderDocument do RasterSurface; koduj przy użyciu encode_png() lub encode_bmp().
  • Kodowanie Unicode: Warstwa wyjściowa PDF zapisuje tekst Unicode wielojęzykowy, w tym CJK i cyrylicę.

Zastosowania renderowania niskiego poziomu

  • Niestandardowe generowanie PDF: Twórz strony z wektorowymi ścieżkami, tekstem i obrazami bez pośredniego pliku PS/XPS.
  • Pixel-perfect testing: Użyj RasterRenderer do renderowania dokumentów i porównywania wyników pikseli w testach automatycznych.
  • Osadzanie czcionek: Osadź czcionki TrueType przy użyciu FontResolver i build_embedded_font() w celu prawidłowego renderowania.
  • Zarządzanie kolorem: Zastosuj Paint obiekty z przestrzeniami kolorów DeviceRGB lub opartymi na CIE do ścieżek i tekstu.

Konwertuj PS do PDF

Wywołaj PsDocument.from_file(), aby uzyskać dostęp do pliku PostScript, i wywołaj to_pdf(), aby wyeksportować go jako strumień bajtów 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)

Konwertuj EPS do PNG

Ta sama klasa PsDocument obsługuje pliki EPS. Przekaż ImageSaveOptions z żądanym formatem i DPI do 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)

Konwertuj XPS do PDF

Wywołaj XpsDocument.from_file(), aby uzyskać dostęp do dokumentu XPS, i wywołaj to_pdf(), aby wyeksportować go jako strumień bajtów 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)

Najczęściej Zadawane Pytania

Jaką licencję używa Aspose.Page FOSS dla Python?

Aspose.Page FOSS dla Python jest wydany na licencji MIT, co pozwala na użycie w aplikacjach komercyjnych i własnościowych.

Czy istnieją jakiekolwiek natywne zależności?

Nie. Biblioteka nie ma zależności od Ghostscript, Adobe Reader ani żadnego natywnego środowiska uruchomieniowego. Działa na systemach Windows, Linux i macOS.

Jakie formaty wejściowe obsługuje biblioteka?

Biblioteka odczytuje pliki PostScript (.ps), Encapsulated PostScript (.eps) oraz XPS (.xps).

Jakie formaty wyjściowe generuje biblioteka?

Biblioteka eksportuje do PDF za pomocą to_pdf() oraz do rastrowych obrazów PNG lub JPEG za pomocą to_image() z ImageSaveOptions.

Czy mogę przetwarzać pliki w pamięci bez operacji we/wy na dysku?

Tak. Użyj from_bytes(), aby wczytać surowe bajty, a zwrócone bajty z to_pdf() lub to_image() bezpośrednio, bez zapisywania plików.

  

Zasoby Wsparcia i Nauki

 Polski