Introducere

Aspose.PSD FOSS pentru .NET este o bibliotecă nouă open-source pentru lucrul cu fișiere PSD și PSB (documente mari Photoshop) din cod .NET. Este lansată sub licența MIT, necesită doar .NET 10.0 la rulare și nu are alte dependențe terțe. Pachetul este importat cu using Aspose.PSD.FOSS;.

Biblioteca este organizată în jurul clasei PsdImage, care extinde clasa abstractă de bază Image, și a clasei Layer. Image.Load() / PsdImage.Load() încarcă un document dintr-o cale de fișier sau dintr-un flux, expunând informațiile de antet (Width, Height, ColorMode, Version, Compression) și colecția Layers parsată; PsdImage.Save() scrie documentul înapoi într-un fișier sau flux. Fiecare Layer expune propriile metadate — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey, și informațiile de canal/mască — și un subset al acestor proprietăți poate fi modificat la fața locului și salvat înapoi în fișier.

Această versiune este destinată dezvoltatorilor care trebuie să inspecteze sau să facă editări limitate ale metadatelor în fișiere PSD/PSB dintr-o bază de cod .NET fără o licență comercială — instrumente de asset-pipeline care raportează structura straturilor, scripturi de build care redenumesc sau comută vizibilitatea straturilor înainte de predare, sau fixture-uri de test care trebuie să citească antetul PSD și datele stratului fără un motor complet de redare. Biblioteca nu redă datele de pixeli sau convertește PSD/PSB în alte formate de imagine — este un cititor/scriitor axat pe metadate pentru formatul container PSD/PSB.


Ce este inclus

Inspectarea documentului

PsdImage.Load() analizează antetul unui fișier PSD sau PSB în proprietăți tipizate — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size și IsFlatten — fără a decoda datele de pixeli.

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}");

Metadate strat

Fiecare intrare din PsdImage.Layers este un Layer care expune propriile limite, vizibilitate, opacitate, decupare și metadatele modului de amestecare.

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

Editări de metadate suportate

Un subset de proprietăți ale stratului poate fi modificat la fața locului și rescris cu PsdImage.Save(): nume, vizibilitate, opacitate, decupare, cheia modului de amestecare și cele patru margini ale limitelor.

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

Pornire rapidă

Instalați pachetul, apoi încărcați un fișier PSD sau PSB, inspectați straturile acestuia și salvați-l din nou:

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");

Formate suportate

FormatExtensieCiteșteScrie
Document Photoshoppsd✓✓
Document Photoshop marepsb✓✓

Open Source & Licențiere

Aspose.PSD FOSS pentru .NET este licențiată sub MIT și poate fi utilizată în produse comerciale fără redevențe, fără marcaj de evaluare sau limită de utilizare.

Pachetul este la versiunea 1.0.0 și necesită numai .NET 10.0 la rulare — nu are alte dependențe de terți.


Începeți

Resurse conexe