Conversion
Conversion
Fișierele PSD stochează majoritatea câmpurilor binare în ordine de octeți big-endian. BigEndianBitConverter citește un întreg pe 32 de biți big-endian direct dintr-un tablou de octeți, pentru cazurile în care lucrați cu octeți brute — de exemplu, dintr-o resursă de imagine nerecunoscută.
Decodarea unei valori pe 32 de biți big-endian
from aspose_psd_foss.bigendianbitconverter import BigEndianBitConverter
data = bytes([0x00, 0x00, 0x04, 0x10]) # example 4-byte big-endian field
value = BigEndianBitConverter.to_int32(data, 0)
print(f"Decoded value: {value}") # 1040to_int32(byte_array, offset) citește 4 octeți începând de la offset și îi combină în ordinea celui mai semnificativ octet primul.
Sfaturi și cele mai bune practici
BigEndianBitConverterfurnizeazăto_int32doar în această versiune FOSS — pentru valori big-endian pe 16 biți sau 64 biți, decodați manual cu Python’s built-inint.from_bytes(data, byteorder="big").- Acest utilitar este pentru octeții brut pe care i-ați obținut deja (vezi Resources) — încărcarea, editarea și salvarea normală a documentelor nu o solicită niciodată direct.
Probleme comune
| Problemă | Cauză | Remediere |
|---|---|---|
IndexError apelând to_int32 | Matricea de octeți are mai puțin de 4 octeți disponibili începând de la offset | Verificați len(byte_array) >= offset + 4 înainte de a apela |
FAQ
Am nevoie de asta pentru editarea normală a documentelor?
Nu — este un utilitar de nivel scăzut pentru octeți brute pe care i-ai obținut tu însuți. Încărcarea, editarea și salvarea tipică (vezi Core API) nu îl solicită niciodată direct.
API Reference Rezumat
| Clasă/Metodă | Descriere: |
|---|---|
BigEndianBitConverter.to_int32(byte_array, offset) | Decodează un întreg pe 32 de biți big-endian |