Könnten Sie bitte genauer angeben, für welchen Kontext oder welches
Schreib-Deskriptoren
PsdImage.save ist der einzige öffentliche Einstiegspunkt, um ein Dokument wieder auszugeben — er akzeptiert entweder einen Dateipfad oder einen bereits geöffneten beschreibbaren Stream. Der Low-Level-Abschnittsschreiber, der die eigentliche Byte-Kodierung vornimmt, ist ein internes Implementierungsdetail und kein Aufruf, den Sie direkt verwenden.
Speichern in einen Dateipfad oder Stream
from aspose_psd_foss.psdimage import PsdImage
image = PsdImage.load(input_path)
image.save("output.psd")Das Übergeben eines Streams anstelle eines Pfads lässt den Stream danach offen — Sie bestimmen, wann er geschlossen wird:
with open("output.psd", "wb") as stream:
image.save(stream)Auswahl eines Container-Formats
Es gibt keinen öffentlichen API, um das Ausgabe-Container-Format beim Speichern auszuwählen — ein Speichern spiegelt immer das Format wider, mit dem das Dokument geladen wurde (is_large_document / is_psb). Es gibt keinen unterstützten Konvertierungspfad zwischen PSD und PSB in diesem FOSS-Build.
Tipps und bewährte Praktiken
- Rufen Sie
saveauf, bevor Sie das Bild freigeben —saveauf einem freigegebenenPsdImagelöstRuntimeErroraus. - Der von
saveaufgerufene interne Abschnitt-Writer ist nicht eigenständig ein dokumentierter oder unterstützter Einstiegspunkt; verwenden Sie stetsPsdImage.save.
Häufige Probleme
| Problem | Ursache | Lösung |
|---|---|---|
RuntimeError: PsdImage has been disposed. | save wurde aufgerufen nach dispose() (oder nachdem ein with-Block beendet wurde) | Rufen Sie save auf, bevor das Bild freigegeben wird |
PsdSaveException zur Länge eines Pascal-Strings | Ein String-Wert überschreitet 255Byte | Siehe Core-Ausnahmen |
FAQ
Schließt das Speichern in einen Stream den Stream anschließend?
Nein — das Übergeben eines Streams an save lässt ihn danach geöffnet, sodass Sie seinen Lebenszyklus steuern. Das Speichern in einen Dateipfad hingegen öffnet und schließt die Datei intern.
Kann ich eine PSB-Datei aus einem als PSD geladenen Dokument erzeugen?
Nein — es gibt keine öffentliche API, um das Containerformat beim Speichern zu überschreiben; es spiegelt stets das Format des geladenen Dokuments wider.
API Reference Zusammenfassung
| Klasse/Methode | Beschreibung |
|---|---|
PsdImage.save(file_path) / PsdImage.save(stream) | Speichert das Dokument |