Aprende Java Aprende Php Aprende C++ Aprende HTML 5 Aprende JavaScript Aprende JSON Aprende MySQL Aprende SQLServer Aprende Visual Basic 6 Aprende PostgreSQL Aprende SQLite Aprende Redis Aprende Kotlin Aprende XML Aprende Linux VSC Aprende Wordpress Aprende Laravel Aprende VueJS Aprende JQuery Aprende Bootstrap Aprende Netbeans Aprende Android
Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube Sigueme en TikTok Sigueme en Whatsapp
Home / Android / Dibujar Bitmap en Android

Dibujar Bitmap en Android

Por 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

Artículos similares

Bandera en Alto

EL 6 de agosto de cada año se recuerda una de las fechas más importantes de la historia boliviana, porque el 6 de Agosto[...]

Qulqi: Convierte números a letras en java

Hola 🙂 publicando de tiempo les dejo esta chiti librería java para convertir números a su equivalente literal. La librer[...]

Graficos estadisticos con javafx y swing

En este post aprenderemos a usar los gráficos 2d que viene con JavaFX en nuestras aplicaciones java swing. Esto puede se[...]

GSON: Generar objetos java desde JSON

En un post anterior vimos como utilizar GSON para serializar un objeto java en JSON, en esta oportunidad se vera el proc[...]

JLabel: Escalar imagen

El componente swing JLabel nos permite cargar una imagen con la propiedad setIcon, sin embargo la imagen no toma el tama[...]

MVC: Modelo, Vista y Controlador en PHP

EL patrón MVC (Model, View, Controller) o Modelo, Vista Controlador, es un tipo de diseño que separa en capas bien defin[...]