Sections
Sections
Sebuah PsdImage yang dimuat menampilkan objek ringkasan hanya-baca untuk bagian struktural dari dokumen PSD/PSB — header, bagian data warna, bagian data gambar, dan bagian sumber daya gambar — semuanya melalui properti yang bertipe, tanpa memerlukan parsing manual pada tingkat byte.
Memeriksa Bagian Header
PsdImage.header mengembalikan PsdHeader dengan bidang struktural mentah dokumen. PsdHeader.version adalah versi kontainer PSD mentah (1 untuk PSD, 2 untuk PSB) — ini merupakan properti yang berbeda dari PsdImage.version yang tidak terkait, yang merupakan nomor versi API tetap, bukan nilai format file.
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}")Memeriksa Bagian Data Warna
PsdImage.color_data_info mengembalikan ringkasan PsdColorDataInfo; kind adalah nilai PsdColorDataKind (NONE, INDEXED_PALETTE, RGB_PAYLOAD, CMYK_PAYLOAD, atau 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}")Memeriksa Bagian Data Gambar
PsdImage.image_data_info mengembalikan ringkasan PsdImageDataInfo yang menjelaskan bagaimana data piksel yang digabungkan dienkode; image.compression melaporkan enkoding yang sama melalui enum CompressionMethod terpisah.
data_info = image.image_data_info
print(f"Compression: {image.compression}, data kind: {data_info.kind}")
print(f"Uses prediction: {data_info.uses_prediction}")Memeriksa Bagian Sumber Daya Gambar
PsdImage.resources, resource_count, dan has_image_resources menampilkan isi bagian sumber daya gambar. Lihat Resources untuk API sumber daya lengkap.
print(f"Resource count: {image.resource_count}")Tips dan Praktik Terbaik
PsdHeaderdan ringkasan bagian terkaitnya (PsdColorDataInfo,ColorData,PsdImageDataInfo) semuanya bersifat read-only dalam build FOSS ini — tidak ada setter publik pada properti apa pun.- Jangan bingungkan
PsdHeader.version(versi kontainer PSD/PSB yang sebenarnya) denganPsdImage.version(nomor versi API tetap yang tidak terkait dan selalu6). - Periksa
image.has_color_mode_datasebelum membacacolor_data_info— dokumen tanpa data mode warna tetap mengembalikan objek ringkasan, tetapi bidangnya mungkin tidak bermakna.
Masalah Umum
| Masalah | Penyebab | Perbaikan |
|---|---|---|
header.color_mode tidak cocok dengan image.color_mode | PsdHeader.color_mode adalah bidang integer mentah dari file; PsdImage.color_mode adalah enum ColorModes yang bertipe kuat yang dibangun darinya | Gunakan image.color_mode untuk nilai bertipe; gunakan header.color_mode hanya jika Anda memerlukan integer mentah |
color_data_info.indexed_palette adalah None | Jenis data warna dokumen bukan INDEXED_PALETTE | Hanya dokumen berwarna terindeks yang memiliki palet — periksa color_data_info.kind terlebih dahulu |
FAQ
Bisakah saya memodifikasi bagian header, data warna, atau data gambar secara langsung?
Tidak — PsdHeader, PsdColorDataInfo, ColorData, dan PsdImageDataInfo semuanya merupakan objek ringkasan baca-saja dalam build FOSS ini.
Apa perbedaan antara image.compression dan image.image_data_info.kind?
Mereka mendeskripsikan pengkodean dasar yang sama melalui dua enum terpisah: image.compression mengembalikan nilai CompressionMethod, sedangkan image.image_data_info.kind mengembalikan nilai ImageDataKind.
API Reference Ringkasan
| Kelas/Metode | Deskripsi |
|---|---|
PsdImage.header | Ringkasan header dokumen (PsdHeader) |
PsdImage.color_data_info / parsed_color_data | Ringkasan bagian data warna (PsdColorDataInfo / ColorData) |
PsdImage.image_data_info / image_data_kind / compression | Ringkasan bagian data gambar |
PsdImage.resources / resource_count / has_image_resources | Ringkasan bagian sumber daya gambar |