para - manual de programacion android pdf
Editor de Imagen de Android (1)
Quiero crear una aplicación para Android donde pueda tomar una foto de la tarjeta SD o de la cámara. Después de tomar la foto, tengo que editarla, como agregar texto en la imagen, recortarla, agregar un archivo de tipo .gif a la imagen. Tomar una foto no es el problema, pero no puedo entender cómo escribir código para editar la imagen. Necesito saber si tengo que usar OpenGL para esto. Se buscan sugerencias y enlaces útiles.
Tu pregunta es demasiado vaga. Proporciono alguna guía.
- El uso de
Aviary SDKahora se convierte en Creative SDK . También es compatible con iOS y WindowPhone7. Aviary ofrece la mayoría de las funciones, como Orientación, Recorte y Nitidez, Ojos rojos, Blanqueamiento y Manchas, Pegatinas, Dibujo, Texto y Meme (beta), Brillo, Saturación, Contraste y Opciones personalizadas. . - Fotor SDK
-
Creative SDK de Adobe Procesar directamente el mapa de bits.
import android.graphics.Bitmap; public class ProcessingImage { private Bitmap defaultImg; private int idBitmap; public int getIdBitmap() { return idBitmap; } public void setIdBitmap(int idBitmap) { this.idBitmap = idBitmap; } public Bitmap getDefaultImg() { return defaultImg; } public void setDefaultImg(Bitmap defaultImg) { this.defaultImg = defaultImg; } public ProcessingImage() { } public Bitmap processingI(Bitmap myBitmap) { return myBitmap; } public Bitmap TintThePicture(int deg, Bitmap defaultBitmap) { int w = defaultBitmap.getWidth(); int h = defaultBitmap.getHeight(); int[] pix = new int[w * h]; defaultBitmap.getPixels(pix, 0, w, 0, 0, w, h); double angle = (3.14159d * (double) deg) / 180.0d; int S = (int) (256.0d * Math.sin(angle)); int C = (int) (256.0d * Math.cos(angle)); int r, g, b, index; int RY, BY, RYY, GYY, BYY, R, G, B, Y; for (int y = 0; y < h; y++) { for (int x = 0; x < w; x++) { index = y * w + x; r = (pix[index] >> 16) & 0xff; g = (pix[index] >> 8) & 0xff; b = pix[index] & 0xff; RY = (70 * r - 59 * g - 11 * b) / 100; BY = (-30 * r - 59 * g + 89 * b) / 100; Y = (30 * r + 59 * g + 11 * b) / 100; RYY = (S * BY + C * RY) / 256; BYY = (C * BY - S * RY) / 256; GYY = (-51 * RYY - 19 * BYY) / 100; R = Y + RYY; R = (R < 0) ? 0 : ((R > 255) ? 255 : R); G = Y + GYY; G = (G < 0) ? 0 : ((G > 255) ? 255 : G); B = Y + BYY; B = (B < 0) ? 0 : ((B > 255) ? 255 : B); pix[index] = 0xff000000 | (R << 16) | (G << 8) | B; } } Bitmap bm = Bitmap.createBitmap(w, h, defaultBitmap.getConfig()); bm.setPixels(pix, 0, w, 0, 0, w, h); pix = null; return bm; } }
Uso: Procesar color índigo:
TintThePicture(180, myBitmap);
Procesar color verde:TintThePicture(300, myBitmap);
- El uso de android.media.effect se proporciona en API14
- Efecto pro
- Android-Image-Edit
- android-image-editor
- smartcrop-android (esta biblioteca analizará la mejor posición y tamaño del cultivo mediante el cálculo de algunas características: borde, tono de piel, estatura y cara).