2012-03-30 4 views
1

hier tempdata ist die Daten von der Kamera erfasst, savephoto (Bitmap) ist eine Methode verwendet, um das Bild von der Kamera zu speichern, und es wird genau ausgeführt ,, BUt auf [2] überlagere ich ein anderes Bitmap ,, und wenn ich das savephoto (p) anrufe, erstellt es eine leere Datei auf der Speicherkarte ... speichert kein Bild. , wie ichErfassen von Bild von der Kamera und Überlagern eines anderen Bitmap, bevor wir es speichern

[1]File Imgname = Environment.getExternalStorageDirectory(); 
Bitmap bmp = BitmapFactory.decodeByteArray(tempdata,0,tempdata.length); 
imv.setImageBitmap(bmp); 
savePhoto(bmp); 

[2]Bitmap bmp2 = BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher); 
Bitmap b = Bitmap.createBitmap(bmp.getWidth(), bmp.getHeight(), Bitmap.Config.ARGB_8888); 
Canvas canvas = new Canvas(b); 
canvas.drawBitmap(bmp, 0,0, null); 
canvas.drawBitmap(bmp2, 50, 50, null); 
savePhoto(b); 

jede Hilfe sehr thanx die zwei Bitmap auf der jeweils anderen überlagern

Antwort

2

geschätzt, die Sie von der Kamera nach dem Aufstehen Bitmap wie dies nach dem Aufstehen (nehmen bitmap1) tun können, und Ihre Bitmap zum Überlagern über Bitmap1 (angenommen Bitmap2) Dieses OverlayMark() rufen Sie mit Ihren Bitmaps auf, es wird Overlay-Bitmap zurückgegeben, das Ihre erforderliche Bitmap ist. Sie diese Bitmap speichern kann ..

private Bitmap overlayMark(Bitmap bmp1, Bitmap bmp2) { 
    int bh = originalBitmap.getHeight(); 
    int bw = originalBitmap.getWidth(); 
    Bitmap bmOverlay = Bitmap.createBitmap(bw,bh,Bitmap.Config.ARGB_8888); 
    Canvas canvas = new Canvas(bmOverlay); 
    canvas.drawBitmap(bmp1, 0, 0, null); 
    canvas.drawBitmap(bmp2, 0,0, null); 
    return bmOverlay; 
} 
+0

ich diesen Code versucht, ,, aber es funktioniert nicht, wenn ich die bmOverlay in der Speicherkarte zu speichern, eine Datei von 0.0kb schafft, bedeutet eine leere Datei ,,,, – Pranav

+0

zeigen Sie mir den Code Ich werde es überprüfen –

+0

Ich bin passfinf das BMOverlay in eine Methode, die wiederum speichert die Datei, aber es macht eine leere Datei, der Code zum Speichern ist hier: http: //stackoverflow.com/questions/ 9939719/how-to-read-ein-Image-from-Memory-Karte-in-diesem-Szenario – Pranav

Verwandte Themen