Introduction

Aspose.PSD FOSS pour .NET est une nouvelle bibliothèque open-source pour travailler avec les fichiers PSD et PSB (Photoshop large document) depuis le code .NET. Elle est publiée sous licence MIT, nécessite uniquement .NET 10.0 au moment de l’exécution, et n’a aucune autre dépendance tierce. Le package est importé avec using Aspose.PSD.FOSS;.

La bibliothèque est organisée autour de la classe PsdImage, qui étend la classe de base abstraite Image, ainsi que de la classe Layer. Image.Load() / PsdImage.Load() chargent un document à partir d’un chemin de fichier ou d’un flux, exposant les informations d’en-tête (Width, Height, ColorMode, Version, Compression) et la collection Layers analysée; PsdImage.Save() écrit le document de nouveau dans un fichier ou un flux. Chaque Layer expose ses propres métadonnées — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey, ainsi que les informations de canal/masque — et un sous-ensemble de ces propriétés peut être modifié sur place et enregistré de nouveau dans le fichier.

Cette version s’adresse aux développeurs qui doivent inspecter ou effectuer des modifications limitées de métadonnées sur les fichiers PSD/PSB au sein d’une base de code .NET sans licence commerciale — des outils de pipeline d’actifs qui rapportent la structure des calques, des scripts de construction qui renommer ou basculer la visibilité des calques avant la remise, ou des fixtures de test qui doivent lire l’en-tête PSD et les données de calque sans moteur de rendu complet. La bibliothèque ne rend pas les données pixel ni ne convertit PSD/PSB vers d’autres formats d’image — elle est un lecteur/écrivain centré sur les métadonnées pour le format de conteneur PSD/PSB.


Ce qui est inclus

Inspection du document

PsdImage.Load() analyse l’en-tête d’un fichier PSD ou PSB en propriétés typées — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size et IsFlatten — sans décoder les données pixel.

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

Métadonnées du calque

Chaque entrée dans PsdImage.Layers est un Layer exposant ses propres limites, visibilité, opacité, rognage et métadonnées du blend-mode.

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

Éditions de métadonnées prises en charge

Un sous-ensemble des propriétés du calque peut être modifié sur place et réécrit avec PsdImage.Save(): nom, visibilité, opacité, rognage, blend mode key, et les quatre bords des limites.

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

Démarrage rapide

Installez le paquet, puis chargez un fichier PSD ou PSB, inspectez ses calques et enregistrez-le à nouveau:

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

Formats pris en charge

FormatExtensionLireÉcrire
Document Photoshoppsd✓✓
Document Photoshop Largepsb✓✓

Open Source & Licence

Aspose.PSD FOSS pour .NET est sous licence MIT et peut être utilisé dans des produits commerciaux sans redevances, sans filigrane d’évaluation ni limite d’utilisation.

Le paquet est en version 1.0.0 et nécessite uniquement .NET 10.0 à l’exécution — il n’a aucune autre dépendance tierce.


Premiers pas

Ressources associées