Android: Wie überlagern Sie eine Bitmap / zeichnen Sie eine Bitmap?
Ich habe zwei Fragen eigentlich:
- Ist es besser, ziehen Sie ein Bild in einer bitmap, oder erstellen Sie eine bitmap als Ressource und ziehen Sie es über ein bitmap? Leistung klug... was ist besser?
- Wenn ich will, zu zeichnen, etwas transparent über ein bitmap, wie würde ich gehen, es zu tun?
- Wenn ich will, überlagern eine transparente bitmap verwendet wird, über die andere, wie sollte ich das tun?
Sorry für die lange Liste, aber im Interesse lernen, würde ich mag, um zu erforschen, sowohl die Ansätze...
InformationsquelleAutor der Frage Legend | 2009-10-08
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich kann nicht glauben, niemand hat beantwortet das doch! Ein Seltenes Ereignis auf, SO!
1
Frage nicht ganz sinnvoll für mich. Aber ich gebe es ein stechen.
Wenn Sie Fragen über die direkte Zeichnung auf eine Leinwand (Polygone, Beschattung, text etc...) GEGEN das laden einer bitmap blitting auf die Leinwand, die hängt von der Komplexität der Zeichnung.
Wie die Zeichnung wird immer komplizierter, die CPU-Zeit, die benötigt wird, entsprechend zu erhöhen.
Allerdings blitting eine bitmap auf eine Leinwand wird immer eine Konstante Zeit, die proportional zur Größe der bitmap an.
2
Ohne zu wissen, was "etwas" ist, wie kann ich Ihnen zeigen, wie Sie es tun?
Sie sollten in der Lage sein, um herauszufinden, #2 aus der Antwort #3.
3
Annahmen:
du willst Sie beide überlagert von der linken oberen Ecke.
InformationsquelleAutor der Antwort Declan Shanaghy
Können Sie etwas wie das hier tun:
Die Idee ist ganz einfach: Einmal verknüpfen Sie ein bitmap mit einer Leinwand, können Sie rufen Sie die Leinwand' Methoden zum zeichnen über die bitmap.
Diese wird für die Arbeit mit bitmaps, Transparenz. Eine bitmap wird Transparenz, wenn es einen alpha-Kanal hat. Blick auf Bitmap.Config. Sie würde wahrscheinlich verwenden wollen ARGB_8888.
Wichtig: Schauen Sie auf diese Android-Beispiel für die verschiedenen Möglichkeiten, die Sie ausführen können, zeichnen. Es wird Ihnen helfen, eine Menge.
Leistung wise (Speicher-Weise, um genau zu sein), Bitmaps sind die besten Objekte zu verwenden, da Sie einfach wickeln Sie ein natives bitmap. Eine Bildansicht ist eine Unterklasse von View, und eine BitmapDrawable hält eine Bitmap, aber es hat viele andere Dinge auch. Aber dies ist eine starke Vereinfachung. Können Sie vorschlagen, eine performance-spezifischen Szenario für eine präzise Antwort.
InformationsquelleAutor der Antwort Lior
InformationsquelleAutor der Antwort AnsonChen
Wenn der Zweck ist, erhalten Sie ein bitmap, das ist sehr einfach:
Ende, Bild enthält die überschneidung von Bild und image2.
InformationsquelleAutor der Antwort Giorgio Barchiesi
Ich denke, dieses Beispiel wird definitiv helfen Ihnen bei der überlagerung ein transparentes Bild auf ein anderes Bild. Möglich wird dies durch die Zeichnung sowohl die Bilder auf der Leinwand und die Rückkehr des bitmap-Bildes.
Lesen Sie mehr oder laden Sie demo - hier
und nennen Sie die oben genannten Funktion auf die Schaltfläche klicken Sie auf, und übergeben Sie die zwei Bilder auf unsere Funktion wie folgt
Seit mehr als zwei Bilder, können Sie diesem link Folgen, wie das Zusammenführen mehrerer Bilder, die programmgesteuert auf android
InformationsquelleAutor der Antwort Daniel Nyamasyo
InformationsquelleAutor der Antwort Svitlana