Sections

Sections

Un PsdImage încărcat expune obiecte de rezumat numai în citire pentru secțiunile structurale ale unui document PSD/PSB — antetul, secțiunea de date de culoare, secțiunea de date de imagine și secțiunea de resurse de imagine — toate prin proprietăți tipizate, fără a necesita nicio analiză manuală la nivel de octet.


Inspectarea secțiunii de antet

PsdImage.header returnează un PsdHeader cu câmpurile structurale brute ale documentului. PsdHeader.version este versiunea brută a containerului PSD (1 pentru PSD, 2 pentru PSB) — aceasta este o proprietate diferită de PsdImage.version nelegat, care este un număr de versiune API fix, nu o valoare de format de fișier.

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

Inspectarea secțiunii de date de culoare

PsdImage.color_data_info returnează un rezumat PsdColorDataInfo; kind este o valoare PsdColorDataKind (NONE, INDEXED_PALETTE, RGB_PAYLOAD, CMYK_PAYLOAD sau 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}")

Inspectarea secțiunii de date de imagine

PsdImage.image_data_info returnează un rezumat PsdImageDataInfo care descrie cum sunt codate datele pixel îmbinate; image.compression raportează aceeași codare printr-un enum CompressionMethod separat.

data_info = image.image_data_info
print(f"Compression: {image.compression}, data kind: {data_info.kind}")
print(f"Uses prediction: {data_info.uses_prediction}")

Inspectarea secțiunii de resurse imagine

PsdImage.resources, resource_count, și has_image_resources expune conținutul secțiunii de resurse de imagini. Vezi Resources pentru resursele complete API.

print(f"Resource count: {image.resource_count}")

Sfaturi și bune practici

  • PsdHeader și rezumatele secțiunilor aferente (PsdColorDataInfo, ColorData, PsdImageDataInfo) sunt toate numai în citire în această versiune FOSS — nu există setteri publici pentru nicio proprietate a lor.
  • Nu confundați PsdHeader.version (versiunea reală a containerului PSD/PSB) cu PsdImage.version (un număr de versiune API fix, fără legătură, care este întotdeauna 6).
  • Verificați image.has_color_mode_data înainte de a citi color_data_info — un document fără date despre modul de culoare returnează totuși un obiect rezumat, dar câmpurile sale pot să nu fie semnificative.

Probleme comune

ProblemăCauzăRemediere
header.color_mode nu se potrivește cu image.color_modePsdHeader.color_mode este câmpul integer brut din fișier; PsdImage.color_mode este enum-ul ColorModes puternic tipizat construit din elFolosește image.color_mode pentru o valoare tipizată; folosește header.color_mode numai dacă ai nevoie de numărul întreg brut
color_data_info.indexed_palette este NoneTipul de date de culoare al documentului nu este INDEXED_PALETTEDoar documentele cu culori indexate conțin o paletă — verifică mai întâi color_data_info.kind

FAQ

Pot modifica direct secțiunile de antet, date de culoare sau date de imagine?

Nu — PsdHeader, PsdColorDataInfo, ColorData și PsdImageDataInfo sunt toate obiecte de rezumat numai pentru citire în această versiune FOSS.

Care este diferența dintre image.compression și image.image_data_info.kind?

Ele descriu aceeași codificare de bază prin două enumerări separate: image.compression returnează o valoare CompressionMethod, în timp ce image.image_data_info.kind returnează o valoare ImageDataKind.


API Reference Rezumat

Clasă/MetodăDescriere:
PsdImage.headerRezumatul antetului documentului (PsdHeader)
PsdImage.color_data_info / parsed_color_dataRezumat secțiune date de culoare (PsdColorDataInfo / ColorData)
PsdImage.image_data_info / image_data_kind / compressionRezumat secțiune date imagine
PsdImage.resources / resource_count / has_image_resourcesRezumat secțiune resurse imagine

Vezi și:

 Română