Conversion
Conversion
PSD soubory ukládají většinu binárních polí v big-endian pořadí bajtů. BigEndianBitConverter načte big-endian 32-bitové celé číslo přímo z pole bajtů, pro případy, kdy pracujete s raw bajty sami — například z neznámého obrazového zdroje.
Dekódování 32-bitové big-endian hodnoty
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) načte 4 bajty počínaje offset a spojí je v pořadí nejvýznamnějšího bajtu první.
Tipy a osvědčené postupy
BigEndianBitConverterposkytujeto_int32pouze v tomto FOSS buildu — pro 16-bitové nebo 64-bitové big-endian hodnoty dekódujte ručně pomocí vestavěnéhoint.from_bytes(data, byteorder="big")v Python.- Tento nástroj je určen pro surové bajty, které jste již získali (viz Resources) — normální načítání dokumentu, úpravy a ukládání to nikdy přímo nevyžadují.
Časté problémy
| Problém | Příčina | Oprava |
|---|---|---|
IndexError volá to_int32 | Pole bajtů má méně než 4 bajty k dispozici od offset | Zkontrolujte len(byte_array) >= offset + 4 před voláním |
FAQ
Potřebuji to pro běžnou úpravu dokumentů?
Ne — jde o nízkoúrovňový nástroj pro surové bajty, které jste si získali sami. Běžné načítání, úpravy a ukládání (viz Jádro API) nikdy to nevyžaduje přímo.
API Reference Shrnutí
| Třída/Metoda | Popis: |
|---|---|
BigEndianBitConverter.to_int32(byte_array, offset) | Dekóduje 32bitové celé číslo ve formátu big-endian |