बस एक ध्यान दें:
>>> b, g, r = [(packed >> (8*i)) & 255 for i in range(3)]
>>> r, g, b
नमूना अंक के किसी भी संख्या, उदा एक RGBA रंग के साथ लागू होता है। मैंने पाया कि मुझे एक ऐसी स्थिति थी जहां मुझे 32-बिट आरजीबी रंग मूल्य के साथ एक विधि प्रदान करना पड़ा।
विशेष रूप से, यदि आप पीएनजी (या पारदर्शी पिक्सेल वाले किसी भी छवि) को परिवर्तित करने के लिए एपीआई का उपयोग कर रहे हैं, तो आपको execute_trubforms विधि को transarent_substitution_rgb नामक एक तर्क के साथ आपूर्ति करने की आवश्यकता होगी जिसे 32-बिट आरजीबी रंग होना चाहिए मूल्य।
DBR के जवाब से उधार, मैं एक विधि इस के समान के साथ आया था:
def RGBTo32bitInt(r, g, b):
return int('%02x%02x%02x' % (r, g, b), 16)
transformed_image = image.execute_transforms(output_encoding=images.JPEG, transparent_substitution_rgb=RGBTo32bitInt(255, 127, 0))
स्रोत
2013-09-03 23:26:26
आरजीबी पूर्णांक से आपका क्या मतलब है? –
http://www.shodor.org/stella2java/rgbint.html, केवल सूत्र जो मैंने अभी प्रश्न में संपादित किया है। '(255, 255, 255)' = '16777215' – Omar