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 buildusing 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çim | Uzantı | Oku | Yaz |
|---|---|---|---|
| Photoshop Belgesi | psd | ✓ | ✓ |
| Photoshop Büyük Belgesi | psb | ✓ | ✓ |
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.