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

Pruebas funcionales con AssertJ Swing

Pruebas funcionales con AssertJ Swing

AssertJ Swing es una biblioteca para Java que proporciona una interfaz fluida para la realización automatizada de prueba...

Login estilo Google

Login estilo Google

Google tiene entre su formulario de autenticación de usuario para sus diferentes servicios (gmail, blogger, youtube, g+)...

Envío de correo con JavaMail/Netbeans

Envío de correo con JavaMail/Netbeans

JavaMail es una expansión de Java que facilita el envío y recepción de e-mail desde código java. JavaMail implementa el...

Crear componente Switch de Android para Java Swing

Crear componente Switch de Android para Java Swing

En este post crearemos un componente que solo hay en android y que no esta disponible en la paleta de controles de Netbe...

Renombrar atributos JSON con GSON

Renombrar atributos JSON con GSON

Si quieres cambiar el nombre de tus atributos sin tener que reescribir código java por X o Y razón, GSON te permite reno...

Crea un plugin WP con panel de administracion

Crea un plugin WP con panel de administracion

En este post crearemos un plugin para el CMS WordPress el cual comprende el plugin en si, un panel de administración y e...

Comparte lo que sabes

Categorias

Últimas entradas

JSON es un formato de texto ligero para el intercambio de datos ampliamente usado en los Servicios Web. En este post uti...

En este post conoceremos algunos de los operadores de comparación que existen en Linux y realizaremos unos ejercicios pa...

En este post conocernos lo que son las Estructuras de Control IF en los script de Bash. Estas estructuras nos ayudan a c...

Todo producto tecnológico tiene un ciclo de vida, algunos bastante corto otros muy largo, podemos mencionar el software...

Android Bolivia

MAUS