Sections
Sections
ロードされた PsdImage は、PSD/PSB ドキュメントの構造セクション(ヘッダー、カラーデータセクション、画像データセクション、画像リソースセクション)に対して、読み取り専用のサマリーオブジェクトを型付きプロパティを通じて公開し、手動でバイトレベルの解析を行う必要はありません。
ヘッダーセクションの検査
PsdImage.header は、ドキュメントの生の構造フィールドを含む PsdHeader を返します。PsdHeader.version は生の PSD コンテナバージョンです(PSD は 1、PSB は 2)— これは、無関係な PsdImage.version とは別のプロパティで、API の固定バージョン番号であり、ファイル形式の値ではありません。
from aspose_psd_foss.psdimage import PsdImage
image = PsdImage.load(input_path)
header = image.header
print(f"Size: {header.width}x{header.height}, channels: {header.channels}")
print(f"Bit depth: {header.bit_depth}, raw container version: {header.version}")
print(f"Is PSB: {header.is_large_document}")カラーデータセクションの検査
PsdImage.color_data_info は PsdColorDataInfo のサマリーを返します;kind は PsdColorDataKind の値で、NONE、INDEXED_PALETTE、RGB_PAYLOAD、CMYK_PAYLOAD、または RAW_PRESERVED のいずれかです。
if image.has_color_mode_data:
color_info = image.color_data_info
print(f"Color data kind: {color_info.kind}, raw bytes: {color_info.raw_data_length}")画像データセクションの検査
PsdImage.image_data_info は、マージされたピクセルデータがどのようにエンコードされているかを説明する PsdImageDataInfo サマリーを返します; image.compression は、別の CompressionMethod 列挙型を通じて同じエンコードを報告します。
data_info = image.image_data_info
print(f"Compression: {image.compression}, data kind: {data_info.kind}")
print(f"Uses prediction: {data_info.uses_prediction}")画像リソースセクションの検査
PsdImage.resources, resource_count, そして has_image_resources イメージリソースセクションの内容を表面化します。参照 Resources 完全なリソース API については。
print(f"Resource count: {image.resource_count}")ヒントとベストプラクティス
PsdHeaderとその関連セクションサマリー(PsdColorDataInfo、ColorData、PsdImageDataInfo)は、この FOSS ビルドではすべて読み取り専用です — それらのプロパティに対する公開セッターは存在しません。PsdHeader.version(実際の PSD/PSB コンテナバージョン)とPsdImage.version(無関係で固定された API バージョン番号で、常に6)を混同しないでください。image.has_color_mode_dataを確認してからcolor_data_infoを読み取ってください — カラーモードデータがないドキュメントでもサマリーオブジェクトは返されますが、そのフィールドは意味を持たない可能性があります。
一般的な問題
| 問題 | 原因 | 修正 |
|---|---|---|
header.color_mode が image.color_mode と一致しません | PsdHeader.color_mode はファイルからの生整数フィールドです; PsdImage.color_mode はそれから構築された強く型付けされた ColorModes 列挙型です | 型付きの値には image.color_mode を使用し、整数の生データが必要な場合のみ header.color_mode を使用してください。 |
color_data_info.indexed_palette は None です | ドキュメントのカラーデータの種類は INDEXED_PALETTE ではありません | インデックスカラーのドキュメントのみがパレットを持ちます — まず color_data_info.kind を確認してください |
FAQ
ヘッダー、カラーデータ、または画像データセクションを直接変更できますか?
いいえ — PsdHeader、PsdColorDataInfo、ColorData、および PsdImageDataInfo はすべてこの FOSS ビルドの読み取り専用サマリーオブジェクトです。
image.compression と image.image_data_info.kind の違いは何ですか?
それらは同じ基礎エンコーディングを 2 つの別々の列挙型で表します: image.compression は CompressionMethod 値を返し、image.image_data_info.kind は ImageDataKind 値を返します。
API Reference の概要
| クラス/メソッド | 説明 |
|---|---|
PsdImage.header | ドキュメントヘッダーの概要(PsdHeader) |
PsdImage.color_data_info / parsed_color_data | カラー データ セクションの概要 (PsdColorDataInfo / ColorData) |
PsdImage.image_data_info / image_data_kind / compression | 画像 データ セクションの概要 |
PsdImage.resources / resource_count / has_image_resources | 画像 リソース セクションの概要 |