Aspose.PSD FOSS for Python は、無料で MIT ライセンスの純粋な Python ライブラリで、読み込み、検査、
保存 Adobe Photoshop PSD と PSB ファイルを、Adobe Photoshop や任意の
プロプライエタリ ランタイムが不要です。
それは PsdImage とLayer を中心とした軽量でスタンドアロンな API を提供し、Python 開発者に対して、PSD ドキュメントの構造へのプログラム的アクセスを、
なしで
ネイティブ依存性がなくコンパイルできます。
このライブラリは PSD/PSB ファイルの寸法、カラーモード、ビット深度、および圧縮
方式を読み取り、PsdImage.layers を通じてすべてのレイヤーを公開します:各 Layer は名前、
境界、透明度、可視性、ブレンドモードキー(BlendMode)を報告し、
下位レベルのチャンネル情報(ChannelInformation)とマスクデータ(LayerMaskData)も提供します。
レイヤーメタデータのサブセット
— 名前、境界(left/top/right/bottom)、ブレンドモード — は
その場で変更し、PsdImage.save() でディスクに永続化できます;他のすべては
表面上はこの FOSS ビルドでは読み取り専用です。
Aspose.PSD FOSS for Python は MIT ライセンスです。インストールはpip install aspose-psd-foss — このライブラリはサードパーティのネイティブ依存がゼロで、
Python 標準ライブラリのみを使用します。
エンタープライズ製品ファミリーについては、Aspose.PSD — Enterprise Product Family をご覧ください。
Image.load(file_path) はファイルを開き、PsdImage インスタンスを返しますPsdImage.width、height、channels_count はキャンバスのサイズとチャンネル数を報告しますPsdImage.layers はドキュメント順に Layer オブジェクトの全リストを返しますPsdImage.layers はドキュメント順で全ての Layer を返します。各 Layer は name、bounds、opacity、is_visible、blend_mode_key を公開しますLayer.channel_information は、より詳細な検査のためにチャンネルメタデータを公開しますLayer.channels_count は、レイヤーが持つ画像チャンネルの数を報告しますPsdImage.layers 自体は再代入可能で、レイヤーの削除や順序変更に使用できますLayer.name、Layer.left/top/right/bottom、および Layer.blend_mode_key は直接設定できますPsdImage.save(file_path) は変更されたドキュメントをディスクに保存しますPsdImage.load で保存されたファイルを再読み込みすると、編集が正しく往復したことが確認できますNotSupportedException がスローされます — このビルドはメタデータのみの編集をサポートしており、完全な再作成はサポートしていませんLayer.channel_information はチャンネルごとのメタデータコレクションを公開しますLayer.has_mask_data と has_blending_ranges_data はオプションセクションが存在するかどうかを報告しますPsdLoadException と PsdSaveException はロード/セーブエラーを明確なメッセージで表面化しますImage.load を使用してファイルをロードし、PSD 固有のメンバーを持つ PsdImage インスタンスを取得します。
from aspose_psd_foss.image import Image
with Image.load("test.psd") as image:
print(f"Width: {image.width}, Channels: {image.channels_count}, Layers: {len(image.layers)}")
レイヤーの境界とブレンドモードはその場で変更でき、ディスクに保存できます。
from aspose_psd_foss.psdimage import PsdImage
from aspose_psd_foss.layers.blendmode import BlendMode
with PsdImage.load("test.psd") as image:
image.layers[0].left = 10
image.layers[0].top = 20
image.layers[0].right = 40
image.layers[0].bottom = 60
image.layers[0].blend_mode_key = BlendMode.MULTIPLY
image.save("edited.psd")
with PsdImage.load("edited.psd") as reloaded:
print(f"Bounds: {reloaded.layers[0].bounds}, BlendMode: {reloaded.layers[0].blend_mode_key}")
チャネル情報は読み取ることはできますが、再代入することはできません — 再設定しようとすると NotSupportedException がスローされます。
from aspose_psd_foss.psdimage import PsdImage
with PsdImage.load("test.psd") as image:
layer = image.layers[0]
channel_information = layer.channel_information
print(f"Channel count: {layer.channels_count}, first channel: `NotSupportedException`")
# layer.channel_information = channel_information # raises NotSupportedException
Aspose.PSD FOSS for Python は MIT ライセンスです。MIT ライセンスの条件に基づき、商用製品を含む使用、改変、再配布が可能です。
現在のインストールコマンドについては、上記のインストールセクションをご覧ください。
PSD および PSB(Photoshop 大規模ドキュメント)ファイルの読み込みと保存を行います。PNG や JPEG などの他のラスター形式へピクセルデータをレンダリングまたはエクスポートすることはできません。
PsdImage(Image のサブクラス)。PsdImage.load でドキュメントをロードし、layers コレクションとヘッダー プロパティを読み取ります。
はい — Layer は可視性や名前など、いくつかのプロパティに対して動作するセッターを公開しており、PsdImage.layers 自体もコレクションを置き換えるための動作するセッターを持っています。いくつかの特定のプロパティ(チャネル情報、マスクデータ、ブレンド範囲、および一部のドキュメントレベルリソース)はこの FOSS ビルドでは読み取り専用で、設定しようとすると NotSupportedException がスローされます。