Viết mô tả

Viết mô tả

PsdImage.save là điểm vào công cộng duy nhất để ghi lại tài liệu — nó chấp nhận hoặc một đường dẫn tệp hoặc một luồng đã mở có thể ghi. Trình ghi phần cấp thấp thực hiện mã hoá byte thực tế là chi tiết triển khai nội bộ, không phải thứ bạn gọi trực tiếp.


Lưu vào Đường dẫn Tệp hoặc Luồng

from aspose_psd_foss.psdimage import PsdImage

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

Việc truyền một luồng thay vì đường dẫn sẽ để luồng mở sau đó — bạn kiểm soát thời điểm đóng nó:

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

Chọn Định dạng Container

Không có API công cộng nào để chọn định dạng container đầu ra khi lưu — việc lưu luôn phản ánh định dạng mà tài liệu được tải lên (is_large_document / is_psb). Không có đường chuyển đổi được hỗ trợ giữa PSD và PSB trong bản dựng FOSS này.


Mẹo và Thực tiễn tốt nhất

  • Gọi save trước khi giải phóng hình ảnh — save trên một PsdImage đã được giải phóng sẽ gây ra RuntimeError.
  • Bộ ghi ở mức phần nội bộ được gọi bởi save không phải là một điểm vào được tài liệu hoá hoặc hỗ trợ riêng lẻ; luôn luôn đi qua PsdImage.save.

Các vấn đề thường gặp

Vấn đềNguyên nhânCách khắc phục
RuntimeError: PsdImage has been disposed.save đã được gọi sau dispose() (hoặc sau khi khối with kết thúc)Gọi save trước khi giải phóng hình ảnh
PsdSaveException về độ dài chuỗi PascalGiá trị chuỗi vượt quá 255 byteXem Các ngoại lệ lõi

FAQ

Việc lưu vào luồng có đóng luồng sau đó không?

Không — việc truyền một luồng cho save sẽ để luồng mở sau khi thực hiện, vì vậy bạn kiểm soát vòng đời của nó. Ngược lại, lưu vào đường dẫn tệp sẽ mở và đóng tệp nội bộ.

Tôi có thể tạo tệp PSB từ tài liệu được tải dưới dạng PSD không?

Không — không có API công khai nào để ghi đè định dạng container khi lưu; nó luôn phản ánh định dạng gốc của tài liệu đã tải.


API Reference Tóm tắt

Lớp/Phương thứcMô tả
PsdImage.save(file_path) / PsdImage.save(stream)Lưu tài liệu

Xem thêm

 Tiếng Việt