2012-10-12 8 views
6

मैं इस image.For एक बिटमैप कांट-छांट करना मैंBitmap.createBitmap (बिटमैप स्रोत, int x, int y, int चौड़ाई, पूर्णांक ऊंचाई) लौट गलत बिटमैप

Bitmap bitmap = Bitmap.createBitmap(imgView.getWidth(),imgView.getHeight(), Bitmap.Config.RGB_565); 
Bitmap result =Bitmap.createBitmap(bitmap,imgView.getLeft()+10, imgView.getTop()+50, imgView.getWidth()-20, imgView.getHeight()-100); 
bitmap.recycle(); 
Canvas canvas = new Canvas(result); 
imgView.draw(canvas); 

का उपयोग कर रहा है लेकिन यह नीचे में कटौती और बिटमैप का अधिकार। बिटमैप के ऊपर और बाएं हिस्से आउटपुट में मौजूद हैं। इसका मतलब है कि एक्स और वाई स्थिति का कोई प्रभाव नहीं पड़ता है।

मुझे एक अच्छा दस्तावेज खोजा गया है। लेकिन मैं नहीं कर सका।

अग्रिम

यहाँ और कैसे हल करने के लिए क्या समस्या है धन्यवाद?

उत्तर

10

असल में आपकी समस्या उत्पन्न होती है कि आप एक बिटमैप बनाते हैं। आप इसमें कुछ भी नहीं डालते हैं। फिर आप एक छोटा बिटमैप बनाते हैं और फिर आप उस छोटे बिटमैप पर एक छवि दृश्य प्रस्तुत करते हैं।

यह नीचे 100 पिक्सल और दाएं 20 पिक्सेल से कटौती करता है।

आपको बड़ी बिटमैप बनाने की आवश्यकता है। उस बिटमैप में छविदृश्य डेटा जोड़ें। फिर इसका आकार बदलें।

निम्नलिखित कोड काम करना चाहिए:

Bitmap bitmap = Bitmap.createBitmap(imgView.getWidth(),imgView.getHeight(), Bitmap.Config.RGB_565); 
Canvas canvas = new Canvas(bitmap); 
imgView.draw(canvas); 
Bitmap result =Bitmap.createBitmap(bitmap,imgView.getLeft()+10, imgView.getTop()+50, imgView.getWidth()-20, imgView.getHeight()-100); 
bitmap.recycle(); 
+0

you.It ठीक काम करता है धन्यवाद। –

+0

धन्यवाद बॉस। यह अच्छा काम करता है। – basheer

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