Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Android / Dibujar Bitmap en Android

Dibujar Bitmap en Android

Autor jc mouse martes, mayo 8, 2018

Android cuenta con una serie de herramientas en su API para el trabajo con gráficos, entre estos podemos mencionar:

  • Bitmap. Los bitmap o mapa de bits son la estructura donde se almacenan los pixeles que conforman un gráfico, este esta represento como una rejilla rectangular de puntos de color denominada matriz.
  • Canvas. Los canvas son el lienzo digital donde se dibujan los diferentes elementos como ser primitivas geométricas (círculos, rectangulos), texto e imágenes. Cuando “dibujamos” en el canvas, en realidad estamos modificando los pixeles del bitmap.
  • Paint. La clase paint nos permite indicar el estilo y formato de los elementos a dibujar, es decir, tipo de pincel, color, grosor, estilo de linea, etc.

Dicho esto, a continuación un ejemplo de la creación de un mapa de bits en android:

import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ImageView imageView =  ((ImageView)findViewById(R.id.imageView));

        /**
         * creación de imagen
         * */

        //dimensiones de la imagen
        final int ancho = 400;
        final int alto = 400;

        //se define el mapa de bits
        Bitmap bitmap = Bitmap.createBitmap(ancho, alto, Bitmap.Config.ARGB_8888);
        //se define el lienzo
        Canvas canvas = new Canvas(bitmap);
        //estilos
        Paint paint = new Paint();
        paint.setColor(Color.parseColor("#ff950b"));
        canvas.drawPaint(paint);

        //Figura geometria
        paint.setColor(Color.parseColor("#DF3A01"));
        canvas.drawCircle(200, 200, 200, paint);

        //lineas
        paint.setColor(Color.parseColor("#ffffff"));
        paint.setStrokeWidth(6);
        canvas.drawLine(200, 0, 200, 400, paint);
        canvas.drawLine(0, 200, 400, 200, paint);

        //path
        paint.setColor(Color.parseColor("#ffff07"));
        paint.setStrokeWidth(2);
        Path path = new Path();
        path.moveTo(200, 30);
        path.lineTo(250, 120);
        path.lineTo(150, 120);
        canvas.drawPath(path, paint);

        //pintando imagen desde la carpeta de recursos
        Resources res = getResources();
        Bitmap icon = BitmapFactory.decodeResource(res, R.mipmap.ic_launcher);
        canvas.drawBitmap( icon, (ancho / 2) - (icon.getWidth() / 2.f), (alto / 2.f) - (icon.getHeight()/2.f), paint);

        //pintando texto
        paint.setAntiAlias(true);
        paint.setTextSize(54.f);
        paint.setTextAlign(Paint.Align.CENTER);
        paint.setColor(Color.parseColor("#0B0B61"));
        canvas.drawText("JC MOUSE", ancho / 2.f, (alto / 2.f) + 120, paint);

        //agrega el bitmap al ImageView
        imageView.setImageBitmap(bitmap);

    }
}

bitmap android mouse

enjoy!!!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Control de Paginación (Pagination) en tus Apps FX

Control de Paginación (Pagination) en tus Apps FX

El control de paginación de JavaFX (Pagination) se usa para navegar a través de varias paginas de contenido divididas en...

Formulario de login personalizado

Formulario de login personalizado

Hola, en este oportunidad dejo a disposición un formulario de logueo que se me ocurrió de repente creo inspirado en las...

Material Design: BottomNavigationView

Material Design: BottomNavigationView

BottomNavigationView es una barra de navegación que se sitúa en la parte inferior de la pantalla en los dispositivos móv...

Material Design: CardView (Tarjetas)

Material Design: CardView (Tarjetas)

Un CardView es parte de los estilos de Material Design y nos permite mostrar información dentro de tarjetas (Card), esta...

Leer datos de Firebase desde Android

Leer datos de Firebase desde Android

En este post crearemos una aplicación en Android Studio para conectarnos con nuestra base de datos de Firebase y leer al...

Animación de bicho feo en java2D

Animación de bicho feo en java2D

Java2d nos permite manipular imagenes y asi poder crear animaciones sencillas como muestra el siguiente video. Puedes de...

Comparte lo que sabes

Categorias

Últimas entradas

¿Que es el Ciberbullying? Ciberbullying es la unión de dos palabras en inglés cyber + bullying, en español lo conocemos...

Tradukisto es una biblioteca para Java 8 creada para convertir números enteros o cantidades de dinero a sus equivalentes...

Las aplicaciones con IA (Inteligencia Artificial) son cada vez más comunes y se encuentran en diferentes dispositivos de...

Tink es una biblioteca de cifrado desarrollada por un grupo de criptógrafos e ingenieros de seguridad de Google lanzado...

Android Bolivia

MAUS