PSD Belgesini Python içinde Nasıl Yüklenir

PSD Belgesini Python içinde Nasıl Yüklenir

PsdImage.load, bir PSD/PSB belgesini açmak için tek genel giriş noktasıdır — bir dosya yolu ya da zaten açık bir okunabilir akışı kabul eder. İçeride devredilen düşük seviyeli bölüm-bölüm okuyucu doğrudan çağrılacak bir şey değildir.

Adım Adım Kılavuz

Adım 1: Paketi Yükleyin

git clone https://github.com/aspose-psd-foss/Aspose.PSD-FOSS-for-Python.git
cd Aspose.PSD-FOSS-for-Python
# No packaging manifest is published yet -- run from this folder,
# or add it to PYTHONPATH:
export PYTHONPATH=$PWD:$PYTHONPATH

Adım 2: Gerekli Sınıfları İçe Aktarın

from aspose_psd_foss.psdimage import PsdImage
from aspose_psd_foss.coreexceptions.psdloadexception import PsdLoadException

Adım 3: Dosya Yolundan Yükleyin

image = PsdImage.load("input.psd")
print(f"Loaded: {image.width}x{image.height}")
image.dispose()

Adım 4: Bir Akıştan Yükle

Bir akışın aranabilir olması gerekmez — load, ayrıştırmadan önce tüm içeriğini dahili bir tamponda okur:

with open("input.psd", "rb") as stream:
    image = PsdImage.load(stream)

print(f"Loaded from stream: {image.width}x{image.height}")
image.dispose()

Yaygın Sorunlar ve Çözümler

FileNotFoundError: File not found: .... Geçilen yol load varolan bir dosyaya işaret etmiyor — load checks os.path.isfile açmaya çalışmadan önce.

PsdLoadException: Unexpected end of PSD/PSB data while reading the file structure. Kaynak akış veri bitimi nedeniyle ayrıştırma sırasında (bir EOFError okuma sırasında) — dosya büyük ihtimalle kesilmiş.

PsdLoadException: Failed to read PSD/PSB data from the source stream. Akışın kendisinden okurken bir I/O hatası oluştu, paketlenip yeniden yükseltilerek bir PsdLoadException.

ArgumentNullException çağırırken load. load ile çağrıldı None akış argümanı olarak.

Sıkça Sorulan Sorular

Akışı load çağırmadan önce başlangıcına geri aramam (seek) gerekiyor mu?

Hayır — akış aranabilir ise, load okuduktan sonra orijinal konumunu geri getirir; eğer aranabilir değilse, load hâlâ çalışır çünkü ayrıştırmadan önce akışın içeriğini dahili olarak tamponlar.

Yukarıdaki iki FileNotFoundError/PsdLoadException hatası arasındaki fark nedir?

Eksik bir dosya yolu standart hatayı ortaya çıkarır. FileNotFoundError herhangi bir ayrıştırma başlamadan önce. A PsdLoadException bunun yerine bir dosyanın (veya akışın) bulunduğu ve açıldığı, ancak PSD/PSB verisinin kendisinin ayrıştırma başladıktan sonra kesildiği, bozulduğu veya başka bir şekilde okunamaz olduğu anlamına gelir — ayrıca bkz. Troubleshooting sürüm ve sınırla ilgili PsdLoadException türleri.

Ayrıca Bakınız

 Türkçe