Giriş

Aspose.PSD FOSS for .NET, .NET kodundan PSD ve PSB (Photoshop büyük belge) dosyalarıyla çalışmak için yeni bir açık kaynak kütüphanedir. MIT lisansı altında yayınlanmıştır, çalışma zamanında yalnızca .NET 10.0 gerektirir ve başka üçüncü taraf bağımlılığı yoktur. Paket using Aspose.PSD.FOSS; ile içe aktarılır.

Kütüphane, soyut Image temel sınıfını genişleten PsdImage sınıfı ve Layer sınıfı etrafında düzenlenmiştir. Image.Load() / PsdImage.Load() bir belgeyi dosya yolundan veya akıştan yükler, başlık bilgilerini (Width, Height, ColorMode, Version, Compression) ve ayrıştırılmış Layers koleksiyonunu ortaya çıkarır; PsdImage.Save() belgeyi bir dosyaya veya akışa geri yazar. Her Layer, kendi meta verilerini — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey ve kanal/mask bilgilerini — sunar ve bu özelliklerin bir alt kümesi yerinde değiştirilebilir ve dosyaya kaydedilebilir.

Bu sürüm, ticari lisans olmadan bir .NET kod tabanındaki PSD/PSB dosyalarını incelemesi veya sınırlı meta veri düzenlemeleri yapması gereken geliştiriciler içindir — katman yapısını raporlayan asset-pipeline araçları, devretmeden önce katman adını değiştiren veya görünürlüğünü değiştiren derleme betikleri, ya da tam bir render motoru olmadan PSD başlığını ve katman verilerini okuması gereken test fixture’ları. Kütüphane piksel verilerini render etmez veya PSD/PSB’i diğer görüntü formatlarına dönüştürmez — PSD/PSB konteyner formatı için meta veri odaklı bir okuma/yazma aracıdır.


Neler Dahildir

Belge İncelemesi

PsdImage.Load(), bir PSD veya PSB dosyasının başlığını tiplenmiş özelliklere ayrıştırır — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size ve IsFlatten — piksel verilerini çözmeden.

using var image = (PsdImage)Image.Load(inputPath);
Console.WriteLine($"Width: {image.Width}, Height: {image.Height}");
Console.WriteLine($"ColorMode: {image.ColorMode}, Version: {image.Version}");
Console.WriteLine($"Layers: {image.Layers.Length}, Compression: {image.Compression}");

Katman Meta Verileri

PsdImage.Layers içindeki her bir giriş, kendi sınırlarını, görünürlüğünü, opaklığını, kırpmasını ve harmanlama modu meta verilerini ortaya çıkaran bir Layerdır.

foreach (var layer in image.Layers)
{
    Console.WriteLine($"{layer.Name}: {layer.Bounds}, Visible={layer.IsVisible}, Opacity={layer.Opacity}");
}

Desteklenen Meta Veri Düzenlemeleri

Katman özelliklerinin bir alt kümesi yerinde değiştirilebilir ve PsdImage.Save() ile geri yazılabilir: ad, görünürlük, opaklık, kırpma, harmanlama modu anahtarı ve dört sınır kenarı.

Layer layer = image.Layers[0];
layer.Name = $"{layer.Name} (edited)";
layer.IsVisible = !layer.IsVisible;
layer.Opacity = 128;
layer.BlendModeKey = BlendMode.Multiply;
image.Save(outputPath);

Hızlı Başlangıç

Paketi kurun, ardından bir PSD veya PSB dosyası yükleyin, katmanlarını inceleyin ve yeniden kaydedin:

git clone https://github.com/aspose-psd-foss/Aspose.PSD-FOSS-for-.NET.git
cd Aspose.PSD-FOSS-for-.NET
dotnet build
using Aspose.PSD.FileFormats.Psd;

using var image = (PsdImage)Image.Load("input.psd");
Console.WriteLine($"Width: {image.Width}, Height: {image.Height}, Layers: {image.Layers.Length}");

foreach (var layer in image.Layers)
{
    Console.WriteLine($"  {layer.Name}: {layer.Bounds}");
}

image.Save("output.psd");

Desteklenen Biçimler

BiçimUzantıOkuYaz
Photoshop Belgesipsd✓✓
Photoshop Büyük Belgesipsb✓✓

Açık Kaynak & Lisanslama

Aspose.PSD FOSS for .NET MIT lisanslıdır ve telif ücreti olmadan ticari ürünlerde kullanılabilir, değerlendirme filigranı veya kullanım sınırı yoktur.

Paket 1.0.0 sürümündedir ve çalışma zamanında yalnızca .NET 10.0 gerektirir — başka üçüncü taraf bağımlılığı yoktur.


Başlarken

İlgili Kaynaklar