2011-01-25 11 views
18

को खुश कर सके किसी ने मुझसे समझाने (ASCII वास्तव में स्वागत है) क्या stride तर्क Canvas.drawBitmap() में और Bitmap.setPixels()/getPixels() में के लिए खड़ा है? मैं समझता हूं कि यह रंग सरणी में तत्वों को छोड़ने का एक तरीका है, लेकिन कैसे?drawBitmap() और setPixels(): क्या चल रहा है?

उत्तर

19

ज्यादातर मामलों में चौड़ाई चौड़ाई के समान ही है। यदि आप बिटमैप के उप-क्षेत्र की प्रतिलिपि बनाने/खींचने का प्रयास कर रहे हैं तो स्ट्रैड उपयोगी है। उदाहरण के लिए, यदि आपके पास 100x100 बिटमैप है और आप 50x50 शीर्ष-दाएं कोने को आकर्षित करना चाहते हैं, तो आप 50px की चौड़ाई और 100px की एक स्ट्रिंग का उपयोग कर सकते हैं।

+1

क्या आप उदाहरण के साथ थोड़ा और समझा सकते हैं .plz – Nepster

19

स्ट्राइड एक छवि पंक्ति के भंडारण के लिए इस्तेमाल किया बाइट्स की संख्या है।

स्ट्राइड छवि चौड़ाई से अलग हो सकता है।

छवियों में से अधिकांश 4 बाइट गठबंधन कर रहे हैं।

पूर्व के लिए। 50 पिक्सल की चौड़ाई वाली 24 बिट (आरजीबी) छवि। आवश्यक कुल बाइट 150 (3 (आरजीबी) * 50) होगा। जैसा कि छवि 4 बाइट गठबंधन होगी, इस मामले में बाइट आवश्यक 152 हो जाएगा।

तो आप 152, चौड़ाई 50 और छवि संरेखण के रूप में 4 बाइट के रूप में देखेंगे।

-1

यहाँ एक अच्छा explanation from Microsoft क्या कदम आम तौर पर छवियों में है के बारे में है। तो, सादे अंग्रेजी में, यह परिभाषित करता है कि कंप्यूटर छवि डेटा को स्कैन करेगा जब तक कि यह मानता है कि यह अगली पंक्ति पर है।

मैं यह भी मानना ​​है कि @Romain लड़का के उदाहरण भी अगर मैं इसे सही ढंग से समझ x = 50 और ऊंचाई = 50 सेट करने के लिए की आवश्यकता होगी।

संबंधित मुद्दे