Escrevendo um texto sobre uma imagem em Java Android

Complementando o post anterior sobre gerar um mosaico de imagens no Java Android, irei mostrar neste post como escrever um texto sobre a imagem mosaico. No post anterior sugeri utilizar o mosaico para montar uma concatenação de câmeras. Neste post irei sugerir escrever sobre a imagem do mosaico o nome da câmera de cada quadro.

O exemplo que irei apresentar utiliza a imagem do mosaico de câmeras do blog da Framework, mas a ideia vale para qualquer imagem. Para fazer isso em Java utilize o código abaixo.:

    public static void main(String[] args) {

        try {
            BufferedImage image = ImageIO.read(new URL(“http://www.frameworksystem.com/wp-content/uploads/2017/05/mosaico.png”));
            writeText(image, 10, 50, “Camera 1”);
            writeText(image, 10, 400, “Camera 2”);
            writeText(image, 700, 50, “Camera 3”);
            writeText(image, 700, 400, “Camera 4”);

            ImageIO.write(image, “png”, new File(“c:\\temp\\cameras.png”));

        } catch (Exception e) {
            e.printStackTrace();
        }
        
    }
    
    public static void writeText(BufferedImage image, int x, int y, String text) {
        
        try {
    
            Graphics g = image.getGraphics();
            g.setFont(g.getFont().deriveFont(30f));
            g.drawString(text, x, y);
            g.dispose();
    
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

Para fazer em Android utilize o código abaixo:

    public Bitmap writeText(Bitmap bitmap, int x, int y, String text) {
    
        Canvas canvas = new Canvas(bitmap);
        Paint paint = new Paint();
        paint.setColor(Color.BLACK);
        paint.setTextSize(10);
        canvas.drawText(text, x, y, paint);
        
        return bitmap;
    }

Add Comment

Your email address will not be published. Required fields are marked *

Phone: (31) 3646-1612
Fax: (31) 3646-1614
Loja 01, Lourdes, Belo Horizonte/MG
Rua Rio de Janeiro, 1278