Écrire des descripteurs
Écrire les descripteurs
PsdImage.save est le seul point d’entrée public pour écrire un document en sortie — il accepte soit un chemin de fichier, soit un flux déjà ouvert en écriture. L’écrivain de section bas-niveau qui effectue l’encodage réel des octets est un détail d’implémentation interne, pas quelque chose que vous appelez directement.
Enregistrement vers un chemin de fichier ou un flux
from aspose_psd_foss.psdimage import PsdImage
image = PsdImage.load(input_path)
image.save("output.psd")Passer un flux au lieu d’un chemin laisse le flux ouvert par la suite — vous contrôlez quand le fermer:
with open("output.psd", "wb") as stream:
image.save(stream)Choisir un format de conteneur
Il n’existe aucun API public pour choisir le format de conteneur de sortie lors de l’enregistrement — un enregistrement reflète toujours le format (is_large_document / is_psb) avec lequel le document a été chargé. Aucun chemin de conversion pris en charge n’existe entre PSD et PSB dans cette version FOSS.
Conseils et bonnes pratiques
- Appelez
saveavant de libérer l’image —savesur unPsdImagelibéré déclencheRuntimeError. - L’écrivain interne au niveau de la section invoqué par
saven’est pas un point d’entrée documenté ou pris en charge à part entière; passez toujours parPsdImage.save.
Problèmes courants
| Problème | Cause | Correction |
|---|---|---|
RuntimeError: PsdImage has been disposed. | save a été appelé après dispose() (ou après la sortie d’un bloc with) | Appelez save avant de libérer l’image |
PsdSaveException concernant une longueur de chaîne Pascal | Une valeur de chaîne dépasse 255 octets | Voir Exceptions du noyau |
FAQ
L’enregistrement vers un flux ferme-t-il le flux par la suite?
Non — passer un flux à save le laisse ouvert par la suite, vous contrôlez ainsi son cycle de vie. En revanche, enregistrer vers un chemin de fichier ouvre et ferme le fichier en interne.
Puis-je générer un fichier PSB à partir d’un document chargé en tant que PSD?
Non — il n’existe aucun API public pour remplacer le format du conteneur lors de l’enregistrement; il reflète toujours le format propre du document chargé.
API Reference Résumé
| Classe/Méthode | Description |
|---|---|
PsdImage.save(file_path) / PsdImage.save(stream) | Enregistre le document |