Çekirdek API

Temel API

PsdImage giriş noktasıdır, PSD/PSB belgelerini yüklemek, incelemek ve kaydetmek için. Image soyut temel sınıfını genişletir; bu sınıf yalnızca load() bildirir — belgenin geri kalan yüzeyi (width, height, save(), bağlam-yöneticisi desteği) PsdImage içinde tanımlanır, kalıtım yoluyla gelmez.


Belgeleri Yükleme ve Kaydetme

Image.load() bir dosya yolu ya da akış kabul eder ve bir Image döndürür; PSD/PSB girişi için bu her zaman bir PsdImage olur, böylece belge yüzeyi açık bir tip dönüşümü olmadan hemen kullanılabilir. PsdImage, otomatik temizlik için with ifadesini de destekler ve PsdImage.save() belgeyi bir dosya yolu ya da akışa geri yazar.

from aspose_psd_foss.psdimage import PsdImage

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

Belge Başlık Özellikleri

PsdImage ayrıştırılmış başlığı tipli özellikler olarak ortaya koyar: width, height, bits_per_channel, color_mode, version, compression, size ve 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}")

Görüntü Kaynakları

PsdImage.image_resources, ayrıştırılmış ResourceBlock nesnelerinin listesini döndürür. Bu FOSS derlemesinde, image_resources, global_layer_resources, active_layer ve has_transparency_data okunabilir ancak yeniden atanamaz — ayarlayıcıları NotSupportedException hatası yükseltir.

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

İpuçları ve En İyi Uygulamalar

  • Image.load() zaten PSD/PSB girişi için bir PsdImage döndürür — diğer bazı dil portlarının aksine dönüşüm gerekmez.
  • with ifadesini kullanın; PsdImage temizlik için context-manager protokolünü destekler.
  • image_resources, global_layer_resources, active_layer ve has_transparency_data öğelerini bir ayarlayıcı (setter) sunsalar bile sadece okunur olarak kabul edin.
  • image.layer_count‘ı image.layers‘e indekslemeden önce kontrol edin — düzleştirilmiş bir belgede sıfır katman olabilir.

Yaygın Sorunlar

SorunNedenDüzeltme
NotSupportedException, image_resources ayarlanırkenBu özellik, bir ayarlayıcıya (setter) sahip olmasına rağmen FOSS sürümünde yalnızca okunabilir.Değeri okuyun; yeniden atamaya çalışmayın.
Düzleştirilmiş bir belgede boş image.layers listesiis_flatten, True ve belgede ayrıştırılmış katman yok.image.layers içine indekslemeden önce image.layer_count (veya image.is_flatten) kontrol edin

FAQ

Bir PSD belgesini yüklemek piksel verilerini çözer mi?

Hayır. PsdImage.load() belge başlığını, katman üst verilerini ve kaynakları, piksel verilerini çözmeden veya render etmeden ayrıştırır.

Bir PSD dosyasını başka bir görüntü biçimine dönüştürebilir miyim?

Hayır. Bu kütüphane yalnızca PSD/PSB belgelerini yükler, inceler ve kaydeder — piksel verilerini render etmez veya diğer görüntü biçimlerine dönüştürmez.


API Reference Özeti

Sınıf/YöntemAçıklama
Image.load(path) / Image.load(stream)Bir PSD veya PSB belgesi yükler
PsdImage.save(path) / PsdImage.save(stream)Belgeyi kaydeder
PsdImage.width / height / bits_per_channel / color_mode / version / compression / size / is_flattenBelge başlığı özellikleri
PsdImage.image_resourcesAyrıştırılmış görüntü kaynak blokları (salt okunur)

Ayrıca Bakınız

 Türkçe