Sections
Sections
Ein geladenes PsdImage stellt schreibgeschützte Zusammenfassungsobjekte für die strukturellen Abschnitte eines PSD/PSB-Dokuments bereit — den Header, den Farbdatenabschnitt, den Bilddatenabschnitt und den Bildressourcenabschnitt — alles über typisierte Eigenschaften, ohne dass manuelles Byte-Level-Parsing erforderlich ist.
Untersuchung des Header-Abschnitts
PsdImage.header liefert ein PsdHeader mit den rohen strukturellen Feldern des Dokuments. PsdHeader.version ist die rohe PSD-Container-Version (1 für PSD, 2 für PSB) — dies ist eine andere Eigenschaft als das nicht zusammenhängende PsdImage.version, das eine feste API-Versionsnummer ist und keinen Dateiformatwert darstellt.
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}")Untersuchung des Farbdatenabschnitts
PsdImage.color_data_info liefert eine PsdColorDataInfo-Zusammenfassung; kind ist ein PsdColorDataKind-Wert (NONE, INDEXED_PALETTE, RGB_PAYLOAD, CMYK_PAYLOAD oder 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}")Untersuchung des Bilddatenabschnitts
PsdImage.image_data_info gibt eine PsdImageDataInfo Zusammenfassung zurück, die beschreibt, wie die zusammengeführten Pixeldaten codiert sind; image.compression meldet dieselbe Codierung über ein separates CompressionMethod Enum.
data_info = image.image_data_info
print(f"Compression: {image.compression}, data kind: {data_info.kind}")
print(f"Uses prediction: {data_info.uses_prediction}")Untersuchung des Bildressourcenabschnitts
PsdImage.resources, resource_count, und has_image_resources surface die Inhalte des Bildressourcenabschnitts. Siehe Resources für die vollständigen Ressourcen API.
print(f"Resource count: {image.resource_count}")Tipps und bewährte Verfahren
PsdHeaderund seine zugehörigen Abschnittszusammenfassungen (PsdColorDataInfo,ColorData,PsdImageDataInfo) sind in diesem FOSS-Build schreibgeschützt — es gibt keine öffentlichen Setter für irgendeine ihrer Eigenschaften.- Verwechseln Sie nicht
PsdHeader.version(die reale PSD/PSB Container-Version) mitPsdImage.version(eine nicht zusammenhängende, feste API Versionsnummer, die stets6ist). - Überprüfen Sie
image.has_color_mode_data, bevor Siecolor_data_infolesen — ein Dokument ohne Farbbereichsdaten gibt zwar immer noch ein Zusammenfassungsobjekt zurück, aber seine Felder könnten nicht aussagekräftig sein.
Häufige Probleme
| Problem | Ursache | Behebung |
|---|---|---|
header.color_mode stimmt nicht mit image.color_mode überein | PsdHeader.color_mode ist das rohe Integer-Feld aus der Datei; PsdImage.color_mode ist das stark typisierte ColorModes-Enum, das daraus erstellt wird | Verwenden Sie image.color_mode für einen typisierten Wert; verwenden Sie header.color_mode nur, wenn Sie die rohe Ganzzahl benötigen |
color_data_info.indexed_palette ist None | Der Farbdatentyp des Dokuments ist nicht INDEXED_PALETTE | Nur indizierte Farbdokumente enthalten eine Palette — prüfen Sie zuerst color_data_info.kind |
FAQ
Kann ich den Header, die Farbdaten oder die Bilddatenabschnitte direkt ändern?
Nein — PsdHeader, PsdColorDataInfo, ColorData und PsdImageDataInfo sind alle schreibgeschützte Zusammenfassungsobjekte in diesem FOSS-Build.
Was ist der Unterschied zwischen image.compression und image.image_data_info.kind?
Sie beschreiben dieselbe zugrunde liegende Kodierung durch zwei separate Enums: image.compression liefert einen CompressionMethod-Wert, während image.image_data_info.kind einen ImageDataKind-Wert zurückgibt.
API Reference Zusammenfassung
| Klasse/Methode | Beschreibung |
|---|---|
PsdImage.header | Zusammenfassung des Dokumentenkopfes (PsdHeader) |
PsdImage.color_data_info / parsed_color_data | Zusammenfassung des Farbdatenabschnitts (PsdColorDataInfo / ColorData) |
PsdImage.image_data_info / image_data_kind / compression | Zusammenfassung des Bilddatenabschnitts |
PsdImage.resources / resource_count / has_image_resources | Zusammenfassung des Bildressourcenabschnitts |