Escreva descritores
Descritores de Escrita
PsdImage.save é o único ponto de entrada público para gravar um documento novamente — aceita tanto um caminho de arquivo quanto um fluxo gravável já aberto. O gravador de seção de baixo nível que realiza a codificação real dos bytes é um detalhe interno de implementação, não algo que você chama diretamente.
Salvando em um Caminho de Arquivo ou Fluxo
from aspose_psd_foss.psdimage import PsdImage
image = PsdImage.load(input_path)
image.save("output.psd")Passar um fluxo em vez de um caminho deixa o fluxo aberto depois — você controla quando fechá-lo:
with open("output.psd", "wb") as stream:
image.save(stream)Escolhendo um Formato de Contêiner
Não há API público para escolher o formato de contêiner de saída ao salvar — uma gravação sempre reflete o formato (is_large_document / is_psb) com o qual o documento foi carregado. Não há caminho de conversão suportado entre PSD e PSB nesta compilação FOSS.
Dicas e Melhores Práticas
- Chame
saveantes de descartar a imagem —saveem umPsdImagedescartado geraRuntimeError. - O gravador interno de nível de seção invocado por
savenão é um ponto de entrada documentado ou suportado por si só; sempre passe porPsdImage.save.
Problemas Comuns
| Problema | Causa | Correção |
|---|---|---|
RuntimeError: PsdImage has been disposed. | save foi chamado após dispose() (ou após um bloco with ter sido encerrado) | Chame save antes de descartar a imagem |
PsdSaveException sobre o comprimento de uma string Pascal | Um valor de string excede 255 bytes | Ver Exceções Core |
FAQ
Salvar em um stream fecha o stream posteriormente?
Não — passar um stream para save deixa-o aberto depois, permitindo que você controle seu ciclo de vida. Salvar em um caminho de arquivo, por contraste, abre e fecha o arquivo internamente.
Posso gerar um arquivo PSB a partir de um documento carregado como PSD?
Não — não há API público para sobrescrever o formato do contêiner ao salvar; ele sempre reflete o formato próprio do documento carregado.
API Reference Resumo
| Classe/Método | Descrição |
|---|---|
PsdImage.save(file_path) / PsdImage.save(stream) | Salva o documento |