Conversion
Conversion
Los archivos PSD almacenan la mayoría de los campos binarios en orden de bytes big-endian. BigEndianBitConverter lee un entero de 32 bits big-endian directamente de un array de bytes, para los casos en que trabajas con bytes crudos tú mismo — por ejemplo, de un recurso de imagen no reconocido.
Decodificando un valor de 32 bits 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) lee 4 bytes a partir de offset y los combina con el byte más significativo primero.
Consejos y mejores prácticas
BigEndianBitConverterproporcionato_int32solo en esta compilación FOSS — para valores big-endian de 16 bits o 64 bits, decodifica manualmente con elint.from_bytes(data, byteorder="big")incorporado de Python.- Esta utilidad es para bytes sin procesar que ya has obtenido (ver Resources) — la carga, edición y guardado normales de documentos nunca lo requieren directamente.
Problemas comunes
| Problema | Causa | Corrección |
|---|---|---|
IndexError llamando a to_int32 | La matriz de bytes tiene menos de 4 bytes disponibles a partir de offset | Verifique len(byte_array) >= offset + 4 antes de llamar |
FAQ
¿Necesito esto para la edición normal de documentos?
No — es una utilidad de bajo nivel para bytes sin procesar que has obtenido tú mismo. La carga, edición y guardado típicos (ver Núcleo API) nunca lo requiere directamente.
API Reference Resumen
| Clase/Método | Descripción |
|---|---|
BigEndianBitConverter.to_int32(byte_array, offset) | Decodifica un entero de 32 bits big-endian |