Scrie descriptorii
Scrierea descriptorilor
PsdImage.save este singurul punct de intrare public pentru scrierea unui document înapoi — acceptă fie o cale de fișier, fie un flux scriibil deja deschis. Scriitorul de secțiuni de nivel inferior care efectuează codificarea efectivă a octeților este un detaliu de implementare intern, nu ceva ce se apelează direct.
Salvare într-o cale de fișier sau flux
from aspose_psd_foss.psdimage import PsdImage
image = PsdImage.load(input_path)
image.save("output.psd")Transmiterea unui flux în loc de o cale lasă fluxul deschis ulterior — tu controlezi când să îl închizi:
with open("output.psd", "wb") as stream:
image.save(stream)Alegerea unui format container
Nu există niciun API public pentru a alege formatul containerului de ieșire la salvare — o salvare reflectă întotdeauna formatul cu care a fost încărcat documentul (is_large_document / is_psb). Nu există nicio cale de conversie suportată între PSD și PSB în această versiune FOSS.
Sfaturi și bune practici
- Apelă
saveînainte de a elibera imaginea —savepe unPsdImageeliberat ridicăRuntimeError. - Scriitorul intern la nivel de secțiune invocat de
savenu este un punct de intrare documentat sau suportat de unul singur; treci întotdeauna prinPsdImage.save.
Probleme comune
| Problemă | Cauză | Remediere |
|---|---|---|
RuntimeError: PsdImage has been disposed. | save a fost apelat după dispose() (sau după ce un bloc with a ieșit) | Apelă save înainte de a elibera imaginea |
PsdSaveException despre lungimea unui șir Pascal | O valoare de șir depășește 255 de octeți | Vezi Excepții de bază |
FAQ
Salvarea într-un flux închide fluxul ulterior?
Nu — transmiterea unui flux către save îl lasă deschis ulterior, astfel că controlezi ciclul său de viață. Salvarea într-o cale de fișier, dimpotrivă, deschide și închide fișierul intern.
Pot să produc un fișier PSB dintr-un document încărcat ca PSD?
Nu — nu există niciun API public pentru a suprascrie formatul containerului la salvare; acesta reflectă întotdeauna formatul propriu al documentului încărcat.
API Reference Rezumat
| Clasă/Metodă | Descriere: |
|---|---|
PsdImage.save(file_path) / PsdImage.save(stream) | Salvează documentul |