2010-09-09 22 views
15

मैं एक चीजों एंड्रॉयड से कोई लेना देना, हां, तो मैं 2 छवियाँ, कहींसंयोजन 2 छवियाँ ओवरले

तो मैं क्या हासिल करना चाहते हैं

से कैमरा 2. एक और छवि से 1. छवि है मिल गया है उन छवियों को 1 छवि में कैसे गठबंधन करें, लेकिन यह ओवरलैपिंग (छवि को वॉटरमार्किंग की तरह), दूसरी छवि को पहली छवि (कैमरा) के आकार में पहले स्केल किया जाना चाहिए - इसलिए उनके पास समान आयाम है, फिर यदि दूसरी छवि पिक्सेल काला है, इसे गठबंधन न करें (इसलिए काला का मतलब पारदर्शी रंग है - दूसरी छवि पर)

क्या आपको पता है कि यह हासिल करने का सबसे अच्छा तरीका क्या है, क्या मैं xo के साथ ऐसा कर सकता हूं आर या bitwise?

कोई संदर्भ या नमूना कोड वास्तव में वास्तव में बहुत सराहना करेगा।

धन्यवाद दोस्तों,

+0

http: //kyogs.blogspot। में/2012/08/mearge-images.html इसे जांचें। – kyogs

उत्तर

44

दो बिटमैप्स डालने के लिए:

public static Bitmap overlay(Bitmap bmp1, Bitmap bmp2) { 
     Bitmap bmOverlay = Bitmap.createBitmap(bmp1.getWidth(), bmp1.getHeight(), bmp1.getConfig()); 
     Canvas canvas = new Canvas(bmOverlay); 
     canvas.drawBitmap(bmp1, new Matrix(), null); 
     canvas.drawBitmap(bmp2, 0, 0, null); 
     return bmOverlay; 
    } 

और स्केलिंग एक पहले आप createScaledBitmap की जांच करनी चाहिए, उदाहरण के लिए:

Bitmap scaledBitmap = Bitmap.createScaledBitmap(src, dstWidth, dstHeight, filter); 
+0

हाय, आपके उत्तर के लिए धन्यवाद, मैं पहले कोशिश करूंगा और परिणाम – AnD

+0

हाय के साथ यहां वापस आऊंगा यह बड़े आयाम ~ 2000px x 1500px के साथ भी काम करता है, लेकिन बात यह है कि अगर मैं इसे दो बार करता हूं, तो दूसरा प्रयास मिल जाता है एक अपवाद (सिंचन से बाहर हो सकता है) - मैंने अपना कोड थ्रेड – AnD

+0

@ एएनडी @ सीपीटी.ओहलंड के अंदर रखा है: मेरे डिवाइस में नीचे इमेज (बीएमपी 1) प्रदर्शित नहीं हो रहा है। क्या आपको पता है क्यों? उस छवि के बजाय कुछ रंग प्रदर्शित हो रहा था। – Surej

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