はじめに
Aspose.PSD FOSS for .NET は、.NET コードから PSD および PSB(Photoshop 大規模ドキュメント)ファイルを操作するための新しいオープンソースライブラリです。MIT ライセンスでリリースされ、実行時には .NET 10.0 だけが必要で、他のサードパーティ依存はありません。パッケージは using Aspose.PSD.FOSS; でインポートします。
このライブラリは、抽象的な Image 基底クラスを拡張する PsdImage クラスと Layer クラスを中心に構成されています。Image.Load() / PsdImage.Load() はファイルパスまたはストリームからドキュメントを読み込み、ヘッダー情報(Width, Height, ColorMode, Version, Compression)と解析された Layers コレクションを公開します。PsdImage.Save() はドキュメントをファイルまたはストリームに書き出します。各 Layer はそれぞれのメタデータ—Name, Bounds, IsVisible, Opacity, Clipping, BlendModeKey、およびチャンネル/マスク情報—を提供し、これらのプロパティの一部はその場で変更してファイルに保存できます。
このリリースは、商用ライセンスなしで .NET コードベース内の PSD/PSB ファイルを検査したり、限定的なメタデータ編集を行う必要がある開発者向けです。レイヤー構造を報告するアセットパイプラインツール、ハンドオフ前にレイヤー名を変更または可視性を切り替えるビルドスクリプト、またはフルレンダリングエンジンなしで PSD ヘッダーとレイヤーデータを読み取る必要があるテストフィクスチャなどが該当します。このライブラリはピクセルデータをレンダリングしたり、PSD/PSB を他の画像形式に変換したりはしません。PSD/PSB コンテナ形式向けのメタデータ中心のリーダー/ライターです。
含まれるもの
ドキュメント検査
PsdImage.Load() は PSD または PSB ファイルのヘッダーを型付きプロパティ(Width, Height, BitsPerChannel, ColorMode, Version, Compression, Size, IsFlatten)に解析しますが、ピクセルデータのデコードは行いません。
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}");
レイヤーメタデータ
PsdImage.Layers の各エントリは、独自の境界、可視性、不透明度、クリッピング、ブレンドモードメタデータを公開する Layer です。
foreach (var layer in image.Layers)
{
Console.WriteLine($"{layer.Name}: {layer.Bounds}, Visible={layer.IsVisible}, Opacity={layer.Opacity}");
}
サポートされているメタデータ編集
レイヤー属性のサブセットは、その場で変更でき、PsdImage.Save() を使用して書き戻すことができます:名前、可視性、不透明度、クリッピング、ブレンドモードキー、そして4つの境界エッジ。
Layer layer = image.Layers[0];
layer.Name = $"{layer.Name} (edited)";
layer.IsVisible = !layer.IsVisible;
layer.Opacity = 128;
layer.BlendModeKey = BlendMode.Multiply;
image.Save(outputPath);
クイックスタート
パッケージをインストールし、PSD または PSB ファイルを読み込んでレイヤーを検査し、再び保存します:
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");
サポートされているフォーマット
| 形式 | 拡張子 | 読み取り | 書き込み |
|---|---|---|---|
| Photoshop ドキュメント | psd | ✓ | ✓ |
| Photoshop 大型ドキュメント | psb | ✓ | ✓ |
オープンソースとライセンス
Aspose.PSD FOSS for .NET は MIT ライセンスで、ロイヤリティなしで商用製品に使用でき、評価用の透かしや使用制限はありません。
このパッケージはバージョン 1.0.0 で、実行時には .NET 10.0 だけが必要です — 他のサードパーティ依存はありません。