Zapsat popisovače

Zapisovat deskriptory

PsdImage.save je jediný veřejný vstupní bod pro zápis dokumentu zpět — přijímá buď cestu k souboru, nebo již otevřený zapisovatelný stream. Nízkourovňový zapisovač sekcí, který provádí skutečné kódování bajtů, je interní implementační detail, ne něco, co byste volali přímo.


Ukládání do cesty souboru nebo streamu

from aspose_psd_foss.psdimage import PsdImage

image = PsdImage.load(input_path)
image.save("output.psd")

Předání streamu místo cesty ponechá stream po operaci otevřený — vy kontrolujete, kdy jej zavřít:

with open("output.psd", "wb") as stream:
    image.save(stream)

Volba kontejnerového formátu

Neexistuje veřejný API pro výběr výstupního kontejnerového formátu při ukládání — ukládání vždy odráží formát (is_large_document / is_psb), ve kterém byl dokument načten. V této FOSS verzi neexistuje podpořená cesta konverze mezi PSD a PSB.


Tipy a osvědčené postupy

  • Zavolejte save před uvolněním obrazu — save na uvolněném PsdImage vyvolá RuntimeError.
  • Interní zapisovač na úrovni sekce, který volá save, není samostatně dokumentovaným ani podporovaným vstupním bodem; vždy jej používejte přes PsdImage.save.

Časté problémy

ProblémPříčinaOprava
RuntimeError: PsdImage has been disposed.save byl volán po dispose() (nebo po ukončení bloku with)Zavolejte save před uvolněním obrázku
PsdSaveException o délce Pascalova řetězceŘetězcová hodnota přesahuje 255 bajtůViz Základní výjimky

FAQ

Zavře se po uložení do proudu (streamu) tento stream?

Ne — předání streamu do save jej po operaci nechává otevřený, takže máte kontrolu nad jeho životním cyklem. Uložení na souborovou cestu naopak otevře a zavře soubor interně.

Mohu vytvořit soubor PSB z dokumentu načteného jako PSD?

Ne — neexistuje žádné veřejné API pro přepsání kontejnerového formátu při ukládání; vždy odráží formát načteného dokumentu.


API Reference Shrnutí

Třída/MetodaPopis:
PsdImage.save(file_path) / PsdImage.save(stream)Uloží dokument

Viz také:

 Čeština