Introdução

Aspose.PSD FOSS para .NET é uma nova biblioteca de código aberto para trabalhar com arquivos PSD e PSB (documento grande do Photoshop) a partir de código .NET. É lançada sob a licença MIT, requer apenas .NET 10.0 em tempo de execução e não tem outras dependências de terceiros. O pacote é importado com using Aspose.PSD.FOSS;.

A biblioteca está organizada em torno da classe PsdImage, que estende a classe base abstrata Image, e da classe Layer. Image.Load() / PsdImage.Load() carregam um documento a partir de um caminho de arquivo ou de um stream, expondo informações de cabeçalho (Width, Height, ColorMode, Version, Compression) e a coleção Layers analisada; PsdImage.Save() grava o documento de volta em um arquivo ou stream. Cada Layer expõe seus próprios metadados — Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey, e informações de canal/máscara — e um subconjunto dessas propriedades pode ser alterado no local e salvo novamente no arquivo.

Esta versão é destinada a desenvolvedores que precisam inspecionar ou fazer edições limitadas de metadados em arquivos PSD/PSB dentro de uma base de código .NET sem uma licença comercial — ferramentas de pipeline de ativos que relatam a estrutura de camadas, scripts de compilação que renomeiam ou alternam a visibilidade de camadas antes da entrega, ou fixtures de teste que precisam ler o cabeçalho PSD e os dados de camada sem um motor de renderização completo. A biblioteca não renderiza dados de pixel nem converte PSD/PSB para outros formatos de imagem — é um leitor/gravador focado em metadados para o formato de contêiner PSD/PSB.


O que está incluído

Inspeção de Documento

PsdImage.Load() analisa o cabeçalho de um arquivo PSD ou PSB em propriedades tipadas — Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size e IsFlatten — sem decodificar os dados de 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}");

Metadados da Camada

Cada entrada em PsdImage.Layers é um Layer que expõe seus próprios limites, visibilidade, opacidade, recorte e metadados de modo de mesclagem.

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

Edições de Metadados Suportadas

Um subconjunto das propriedades da camada pode ser alterado no local e escrito de volta com PsdImage.Save(): nome, visibilidade, opacidade, recorte, chave do modo de mesclagem e as quatro bordas de 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);

Início Rápido

Instale o pacote, então carregue um arquivo PSD ou PSB, inspecione suas camadas e salve-o novamente:

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

Formatos Suportados

FormatoExtensãoLerEscrever
Documento do Photoshoppsd✓✓
Documento Grande do Photoshoppsb✓✓

Código Aberto & Licenciamento

Aspose.PSD FOSS for .NET é licenciado sob MIT e pode ser usado em produtos comerciais sem royalties, sem marca d’água de avaliação ou limite de uso.

O pacote está na versão 1.0.0 e requer apenas .NET 10.0 em tempo de execução — não tem outras dependências de terceiros.


Começando

Recursos Relacionados