Core API

Alap API

PsdImage a belépési pont a PSD/PSB dokumentumok betöltéséhez, ellenőrzéséhez és mentéséhez. Kiterjeszti az absztrakt Image alaposztályt, amely csak a load()-t deklarálja — a dokumentum felületének többi része (width, height, save(), a context-manager támogatás) a PsdImage saját magján van definiálva, nem öröklődik.


Dokumentumok betöltése és mentése

Image.load() fájlútvonalat vagy streame-et fogad el, és visszaad egy Image-t; PSD/PSB bemenet esetén ez mindig egy PsdImage, így a dokumentum felülete azonnal elérhető explicit átkonvertálás nélkül. PsdImage támogatja a with utasítást az automatikus takarításra, és PsdImage.save() visszaírja a dokumentumot egy fájlútvonalra vagy streame-re.

from aspose_psd_foss.psdimage import PsdImage

with PsdImage.load(input_path) as image:
    # ... inspect or edit ...
    image.save(output_path)

Dokumentumfejléc tulajdonságai

PsdImage a feldolgozott fejlécet típusosított tulajdonságokként teszi elérhetővé: width, height, bits_per_channel, color_mode, version, compression, size és is_flatten.

print(f"Width: {image.width}, Height: {image.height}")
print(f"ColorMode: {image.color_mode}, Version: {image.version}")
print(f"Compression: {image.compression}, IsFlatten: {image.is_flatten}")

Kép erőforrások

PsdImage.image_resources visszaadja a feldolgozott ResourceBlock objektumok listáját. Ebben a FOSS buildben a image_resources, global_layer_resources, active_layer és has_transparency_data olvasható, de nem írható újra – a setterjeik NotSupportedException-t dobnak.

for resource in image.image_resources:
    print(f"Resource {resource.id}: {resource.name} ({resource.data_size} bytes)")

Tippek és bevált gyakorlatok

  • Image.load() már visszaad egy PsdImage a PSD/PSB bemenethez — nincs szükség átkonvertálásra, ellentétben a könyvtár egyes más nyelvi portjaival.
  • Használd a with utasítást; a PsdImage támogatja a kontextuskezelő protokollt a takarításhoz.
  • Kezeld a image_resources, global_layer_resources, active_layer és has_transparency_data elemeket csak olvashatóként, még ha setter-t is biztosítanak.
  • Ellenőrizd a image.layer_count értékét, mielőtt indexelnél a image.layers-be — egy laposított dokumentumnak lehet, hogy nulla rétege van.

Gyakori problémák

ProblémaOkJavítás
NotSupportedException a(z) image_resources beállításakorEz a tulajdonság csak olvasható a FOSS buildben, annak ellenére, hogy van beállítója.Olvasd ki az értéket; ne próbáld meg újra hozzárendelni.
Üres image.layers lista egy lapított dokumentumban.is_flatten True és a dokumentumnak nincs feldolgozott rétege.Ellenőrizze a(z) image.layer_count (vagy image.is_flatten) indexelés előtt a(z) image.layers

FAQ

A PSD dokumentum betöltése dekódolja a pixeladatokat?

Nem. PsdImage.load() a dokumentumfejlécet, a réteg metaadatait és az erőforrásokat elemzi, anélkül hogy dekódolná vagy megjelenítené a képadatokat.

Átkonvertálhatok egy PSD fájlt egy másik képformátumba?

Nem. Ez a könyvtár csak PSD/PSB dokumentumokat tölt be, vizsgál meg és ment — nem jeleníti meg a képadatokat, és nem konvertál más képformátumokra.


API Reference összefoglaló

Osztály/MódszerLeírás
Image.load(path) / Image.load(stream)Betölti a PSD vagy PSB dokumentumot
PsdImage.save(path) / PsdImage.save(stream)Mentés a dokumentumot
PsdImage.width / height / bits_per_channel / color_mode / version / compression / size / is_flattenDokumentumfejléc tulajdonságai
PsdImage.image_resourcesFeldolgozott kép erőforrás blokkok (csak olvasható)

Lásd még:

 Magyar