Conversion
Conversion
PSD फ़ाइलें अधिकांश बाइनरी फ़ील्ड को big-endian बाइट क्रम में संग्रहीत करती हैं। BigEndianBitConverter बाइट ऐरे से सीधे big-endian 32-bit पूर्णांक पढ़ता है, उन मामलों के लिए जहाँ आप स्वयं कच्चे बाइट्स के साथ काम कर रहे हैं — उदाहरण के लिए, किसी अनपहचाने इमेज रिसोर्स से।
32-bit 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) offset से शुरू होकर 4 बाइट्स पढ़ता है और उन्हें most-significant-byte-first क्रम में जोड़ता है।
टिप्स और सर्वोत्तम प्रथाएँ
BigEndianBitConverterइस FOSS बिल्ड में केवलto_int32प्रदान करता है — 16-bit या 64-bit big-endian मानों के लिए, Python के बिल्ट-इनint.from_bytes(data, byteorder="big")के साथ मैन्युअली डिकोड करें।- यह उपयोगिता उन कच्चे बाइट्स के लिए है जो आपने पहले ही प्राप्त कर लिए हैं (देखें Resources) — सामान्य दस्तावेज़ लोडिंग, संपादन, और सहेजना कभी भी इसे सीधे आवश्यक नहीं करता है।
सामान्य समस्याएँ
| समस्या | कारण | समाधान |
|---|---|---|
IndexError to_int32 को कॉल कर रहा है | बाइट एरे में offset से शुरू होते हुए 4 बाइट्स से कम उपलब्ध हैं | कॉल करने से पहले len(byte_array) >= offset + 4 की जाँच करें |
FAQ
क्या मुझे सामान्य दस्तावेज़ संपादन के लिए इसकी आवश्यकता है?
नहीं — यह एक लो-लेवल यूटिलिटी है कच्चे बाइट्स के लिए जो आपने स्वयं प्राप्त किए हैं। सामान्य लोडिंग, एडिटिंग, और सेविंग (देखें कोर API) सीधे तौर पर इसकी आवश्यकता नहीं होती।
API Reference सारांश
| क्लास/मेथड | विवरण |
|---|---|
BigEndianBitConverter.to_int32(byte_array, offset) | बिग-एंडियन 32-बिट पूर्णांक को डिकोड करता है |