記述子を書き込む

記述子を書き込む

書き込みディスクリプタ

PsdImage.save は、ドキュメントを書き戻すための唯一の公開エントリーポイントです — ファイルパスまたは既に開かれた書き込み可能なストリームのいずれかを受け付けます。実際のバイトエンコーディングを行う低レベルのセクションライターは内部実装の詳細であり、直接呼び出すものではありません。


ファイルパスまたはストリームへの保存

from aspose_psd_foss.psdimage import PsdImage

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

パスの代わりにストリームを渡すと、ストリームはその後も開いたままになります — いつ閉じるかはあなたが制御します:

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

コンテナ形式の選択

保存時に出力コンテナ形式を選択するための公開された API はありません — 保存は常に、ドキュメントが読み込まれた形式(is_large_document / is_psb)をそのまま反映します。この FOSS ビルドでは PSD と PSB 間のサポートされた変換パスは存在しません。


ヒントとベストプラクティス

  • 画像を破棄する前に save を呼び出してください — 破棄された PsdImage に対して save を実行すると RuntimeError が発生します。
  • save によって呼び出される内部のセクションレベルライターは、単独では文書化されておらずサポートされているエントリポイントではありません。常に PsdImage.save を経由してください。

一般的な問題

問題原因修正
RuntimeError: PsdImage has been disposed.save は dispose() の後に呼び出されました(または with ブロックが終了した後)画像を破棄する前に save を呼び出す
PsdSaveException は Pascal 文字列の長さに関するもの文字列の値が 255 バイトを超えています参照 Core 例外

FAQ

ストリームに保存した後、ストリームは閉じられますか?

いいえ — save にストリームを渡すと、保存後もストリームは開いたままになるので、ライフサイクルはあなたが管理します。対照的に、ファイルパスに保存する場合は、内部でファイルを開いて閉じます。

PSDとして読み込んだドキュメントからPSBファイルを作成できますか?

いいえ — 保存時にコンテナ形式を上書きする公開された API はなく、常に読み込んだドキュメントの形式をそのまま反映します。


API Reference の概要

クラス/メソッド説明
PsdImage.save(file_path) / PsdImage.save(stream)ドキュメントを保存します

参照

 日本語