xxhdpi xhdpi para pantallas multiples medidas mdpi layouts densidades android

android - para - mdpi hdpi xhdpi xxhdpi resolution



¿Hay alguna forma de crear dibujables xxhdpi, xhdpi, hdpi, mdpi y ldpi a partir de una imagen a gran escala? (16)

¿Hay alguna forma de crear dibujables xxhdpi, xhdpi, hdpi, mdpi y ldpi a partir de una imagen a gran escala automáticamente? Por ejemplo, supongamos que tengo una imagen de 512x512 y quiero tener diferentes versiones de estas imágenes para diferentes resoluciones de pantalla compatibles con Android en las carpetas apropiadas.



Acabo de encontrar una manera fácil de hacerlo en el nuevo Android Studio:



Escribí un script de Photoshop para crear archivos png ic_launcher a partir de un archivo PSD. Solo revisa ic_launcher_exporter .

Para usarlo, solo descárgalo y usa el script de photoshop.

Y configura donde quieres generar archivos de salida.


He tenido suerte al usar este plug-in para photoshop:

Chequea aquí

Hay algún trabajo para nombrar capas y estados de botón correctamente. Pero, una vez que haces eso, las macros integradas son bastante buenas.

De lo contrario, podría escribir sus propias macros en photoshop si tiene el conocimiento.


He utilizado la solución todo este camino en este hilo, y es fácil de trabajar con el plugin Android Drawable Importer

Si usas Android Studio en MacOS, prueba este paso para entrar:

  • Haga clic en el menú de la barra de Android Studio, luego seleccione Preferencias o toque el botón Comando +,
  • A continuación, elija complementos
  • Haga clic en Buscar repositorios.
  • Escribe en la búsqueda Coloumn Android Drawable Importer
  • Haga clic en el botón Instalar
  • Y luego se muestra el diálogo Reinicio, solo reinícielo Android Studio

Después de haber instalado correctamente el complemento, para hacerlo, haga clic en Crear nuevo menú y luego elija Importar dibujo por lotes . Luego haga clic en el botón más conocido como el botón Agregar, y elija su archivo para hacer dibujable. Y luego simplemente haga clic en ok y ok el dibujable los ha hecho todos.

Si se confunde con mi palabra, solo vea el tutorial de imágenes de learningmechine .


No es 100% automático, pero ahorro mucho tiempo usando Photoshop Actions .

Por ejemplo, dados los recursos xhdpi , creo una tarea para hdpi y mdpi , que se mdpi al 66,66% y al 44,44% respectivamente. Luego ejecuto las acciones para todas las imágenes en la carpeta xhdpi .

Para imágenes de 512x512, todo lo que tiene que hacer es calcular qué porcentaje debe escalar sus imágenes para lograr xxhpi, xhdpi, hdpi y mdpi.


Opción # 1: Simplemente envíe los -xxhdpi y deje que Android los -xxhdpi en el tiempo de ejecución (inconveniente: solo funcionará en dispositivos bastante recientes, donde se conoce a -xxhdpi ).

Opción # 2: Use Android Asset Studio para desmontarlos por usted.

Opción # 3: automatizar el proceso dentro de un editor de gráficos, por la respuesta de ssantos.

Opción # 4: escriba una solución, usando algo como ImageMagick.

Opción # 5: usar panadero de imágenes


También existe la posibilidad de utilizar Vector Asset Studio en combinación con los gráficos vectoriales escalables (SVG) . Android Studio se encargará del resto por ti. Como dice la documentación oficial :

Vector Asset Studio lo ayuda a agregar íconos de material e importar archivos de gráficos vectoriales escalables (SVG) a su proyecto de aplicación como un recurso dibujable. En comparación con las imágenes rasterizadas, los dibujos vectoriales pueden reducir el tamaño de su aplicación y cambiar su tamaño sin perder la calidad de la imagen. Le ayudan a admitir más fácilmente diferentes dispositivos Android con diferentes tamaños de pantalla y resoluciones porque puede mostrar un vector dibujable en todos ellos.

Considero que este es el enfoque de futuro.


Un script de bash que usa ImageMagick (convertir) según la respuesta de CommonsWare:

Creación de carpetas añadidas y verificación de argumentos gracias a Kishan Vaghela

#!/bin/sh #--------------------------------------------------------------- # Given an xxhdpi image or an App Icon (launcher), this script # creates different dpis resources and the necessary folders # if they don''t exist # # Place this script, as well as the source image, inside res # folder and execute it passing the image filename as argument # # Example: # ./drawables_dpis_creation.sh ic_launcher.png # OR # ./drawables_dpis_creation.sh my_cool_xxhdpi_image.png #--------------------------------------------------------------- if [ $# -eq 0 ]; then echo "No arguments supplied" else if [ -f "$1" ]; then echo " Creating different dimensions (dips) of "$1" ..." mkdir -p drawable-xxhdpi mkdir -p drawable-xhdpi mkdir -p drawable-hdpi mkdir -p drawable-mdpi if [ $1 = "ic_launcher.png" ]; then echo " App icon detected" convert ic_launcher.png -resize 144x144 drawable-xxhdpi/ic_launcher.png convert ic_launcher.png -resize 96x96 drawable-xhdpi/ic_launcher.png convert ic_launcher.png -resize 72x72 drawable-hdpi/ic_launcher.png convert ic_launcher.png -resize 48x48 drawable-mdpi/ic_launcher.png rm -i ic_launcher.png else convert $1 -resize 67% drawable-xhdpi/$1 convert $1 -resize 50% drawable-hdpi/$1 convert $1 -resize 33% drawable-mdpi/$1 mv $1 drawable-xxhdpi/$1 fi echo " Done" else echo "$1 not found." fi fi


Utilice un servicio en línea como Image Baker .

Es sencillo. Suba las imágenes y descargue los activos procesados ​​tanto para Android como para iOS.


Utilizar Android Studio Image Asset

Ir:

Project>res --> right click new> image asset

Luego establece:

-Icon type: Launcher Icons -Asset type: Image -Path: the/path/to/your/image -Trim: No -Padding: 0% -Shape: None -Effect: None

Seleccione: Siguiente> Finalizar.

Now you will have your icon in the correct resolutions.

EDITAR: Recomiendo usar imágenes SVG para crear dibujos vectoriales, y luego usarlos en un lienzo para redimensionarlos al tamaño correcto o simplemente cambiar el DP.

Puede obtener los iconos predeterminados de Google o simplemente crear su propio

Project>res --> right click new> vector asset

Luego establece:

-Asset type: Local file (SVG, PSD) -Path: the/path/to/your/image -Size: check Override to keep your aspect ratio. -Chek enable auto mirroring for RTL Layout.

Seleccione: Siguiente> Finalizar.

Ahora tendrá su icono y podrá cambiar el tamaño, el color, etc.


Utilizo una herramienta llamada Android Icon Set en Eclipse para iconos estándar como Launcher, ActionBar, iconos de tabulación e iconos de notificación. Puede iniciarlo desde Archivo -> Nuevo -> Otro .. -> Android -> Conjunto de iconos de Android. La mejor parte es que puede elegir cualquier archivo de su computadora y automáticamente colocará todas las imágenes de tamaños estándar en el directorio de su proyecto.


Yo uso el complemento de Android Studio llamado Android Drawable Importer :

Para usarlo después de instalarlo, haga clic con el botón derecho en su carpeta res / drawable y seleccione New > Batch Drawable Import :

Luego, seleccione su imagen con el botón + y configure la Resolución en xxhdpi (o cualquiera que sea la resolución de su imagen de origen).


Suelo usar assets.codly.io
Genera los activos localmente en su navegador, sin carga, sin descarga.


Trataré de explicar el proceso paso a paso, para que sea fácil de entender para cualquiera.

1. Vaya a Configuración> Complementos

2.Busque "Android Drawable Importer" en la barra de búsqueda

3. No se mostrará el complemento de forma predeterminada , para buscarlo en línea, haga clic en el enlace "Browse"

4. Luego instale el complemento, se mostrará descargando .... a veces puede que no muestre la descarga, así que asegúrese de verificar en la parte inferior del estudio de Android, muestra la descarga.

5. Ahora reinicie Android Studio

6. Como se puede ver en la siguiente captura de pantalla, aquí solo hay un dibujo

7. ahora haga clic con el botón derecho en la carpeta dibujable y navegue a Nuevo> Importación dibujable por lotes

9. Ahora seleccione la imagen "única" que desea diferentes variaciones de dibujables.

10. Ahora seleccione qué dimensión es la imagen de origen. Si la imagen de origen es xxhdpi como en mi caso, seleccione "xxhdpi" como "Source Resoultion".

11. Ahora presiona ok y luego ok otra vez ... y luego tomará unos segundos y luego mágicamente obtendrás todas las variables de los dibujables.