Introduktion
Aspose.PSD FOSS för .NET är ett nytt open-source-bibliotek för att arbeta med PSD- och PSB-filer (Photoshop large document) från .NET-kod. Det är släppt under MIT-licensen, kräver endast .NET 10.0 vid körning och har inga andra tredjepartsberoenden. Paketet importeras med using Aspose.PSD.FOSS;.
Biblioteket är organiserat kring klassen PsdImage, som ärver den abstrakta basklassen Image, samt klassen Layer. Image.Load() / PsdImage.Load() laddar ett dokument från en filsökväg eller en ström, och exponerar headerinformation (Width, Height, ColorMode, Version, Compression) samt den analyserade Layers-samlingen; PsdImage.Save() skriver dokumentet tillbaka till en fil eller ström. Varje Layer exponerar sin egen metadata — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey samt kanal-/maskinformation — och en delmängd av dessa egenskaper kan ändras på plats och sparas tillbaka till filen.
Denna release är avsedd för utvecklare som behöver inspektera eller göra begränsade metadataändringar i PSD/PSB-filer inom en .NET-kodbas utan kommersiell licens — verktyg i asset-pipeline som rapporterar lagerstruktur, byggskript som byter namn på eller togglar lagersynlighet före leverans, eller testfixturear som måste läsa PSD-header och lagerdata utan en fullständig renderingsmotor. Biblioteket renderar inte pixeldata eller konverterar PSD/PSB till andra bildformat — det är en metadata-fokuserad läsare/skrivare för PSD/PSB-containerformatet.
Vad som ingår
Dokumentinspektion
PsdImage.Load() analyserar en PSD- eller PSB-filens header till typade egenskaper — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size och IsFlatten — utan att avkoda pixeldata.
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}");
Lagermetadata
Varje post i PsdImage.Layers är en Layer som visar sina egna gränser, synlighet, opacitet, beskärning och blandningslägesmetadata.
foreach (var layer in image.Layers)
{
Console.WriteLine($"{layer.Name}: {layer.Bounds}, Visible={layer.IsVisible}, Opacity={layer.Opacity}");
}
Stödda metadataredigeringar
En delmängd av lageregenskaper kan ändras på plats och skrivas tillbaka med PsdImage.Save(): namn, synlighet, opacitet, beskärning, nyckel för blandningsläge och de fyra kantgränserna.
Layer layer = image.Layers[0];
layer.Name = $"{layer.Name} (edited)";
layer.IsVisible = !layer.IsVisible;
layer.Opacity = 128;
layer.BlendModeKey = BlendMode.Multiply;
image.Save(outputPath);
Snabbstart
Installera paketet, ladda sedan en PSD- eller PSB-fil, inspektera dess lager och spara tillbaka:
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");
Stödda format
| Format | Filändelse | Läs | Skriv |
|---|---|---|---|
| Photoshop-dokument | psd | ✓ | ✓ |
| Photoshop Stort dokument | psb | ✓ | ✓ |
Open Source & Licensiering
Aspose.PSD FOSS för .NET är licensierad under MIT och får användas i kommersiella produkter utan royalties, utan någon utvärderingsvattenstämpel eller användningsgräns.
Paketet är i version 1.0.0 och kräver endast .NET 10.0 vid körning — det har inga andra tredjepartsberoenden.