Есть ли способ создать xxhdpi, xhdpi, hdpi, mdpi и ldpi drawables из крупномасштабного изображения?
есть ли способ создать xxhdpi, xhdpi, hdpi, mdpi и ldpi drawables из крупномасштабного изображения автоматически? Например, предположим, что у меня есть изображение 512x512, и я хочу иметь разные версии этих изображений для разных разрешений экрана, поддерживаемых Android в соответствующих папках.
16 ответов
Вариант #1: просто отправьте -xxhdpi drawables и пусть Android downsample их для вас во время выполнения (недостаток: будет работать только на довольно последних устройствах, где -xxhdpi известно).
Вариант № 2: Использовать Android Asset Studio чтобы уменьшить их для вас.
Option #3: автоматизация процесса в графическом редакторе, за ответ ssantos.
Вариант #4: Напишите себе решение, используя что-то вроде ImageMagick.
Вариант № 5: Использовать изображения Бейкер
Я использую плагин Android Studio с именем Android Drawable Importer:

чтобы использовать его после установки, щелкните правой кнопкой мыши папку res/drawable и выберите New > Batch Drawable Import:
затем выберите изображение через + кнопка и установить разрешение xxhdpi (или независимо от разрешения исходного изображения).
Я попытаюсь объяснить процесс в пошаговой основе, так что это будет просто понять любому.
1. Перейдите в раздел настройка > Плагины

2.Поиск "android Drawable импортер" в строке поиска

3.Он не будет показывать плагин по умолчанию, для поиска в интернете нажмите в "Browse" ссылке

4.Затем установите плагин, он покажет загрузку .... иногда он может не показывать загрузку, поэтому не забудьте проверить в нижней части Android studio, он показывает загрузку.

5. Теперь перезапустите Android studio
6. Как вы можете видеть в следующем screencap, есть только один drawable здесь

7. теперь щелкните правой кнопкой мыши на папке drawable и перейдите к New>Batch Drawable Import

9. Теперь выберите "сингл " изображение вы хотите различные варианты drawables.
10.Теперь выберите размер исходного изображения. Если происхождение изображение xxhdpi, как в моем случае, выберите " xxhdpi "как"исходное Resoultion".
11.Теперь нажмите ok, затем ok еще раз ..и тогда это займет несколько секунд, а затем вы волшебным образом получите все переменные drawables.

используйте онлайн-сервис, например Изображение Baker.
все просто. Загрузите изображения и загрузите обработанные ресурсы для Android и iOS.
скрипт bash с использованием ImageMagick (convert) в соответствии с ответом CommonsWare:
добавлено создание папки и проверка аргументов благодаря Его 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 "" ]; then
echo " Creating different dimensions (dips) of "" ..."
mkdir -p drawable-xxhdpi
mkdir -p drawable-xhdpi
mkdir -p drawable-hdpi
mkdir -p drawable-mdpi
if [ = "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 -resize 67% drawable-xhdpi/
convert -resize 50% drawable-hdpi/
convert -resize 33% drawable-mdpi/
mv drawable-xxhdpi/
fi
echo " Done"
else
echo " not found."
fi
fi
Я обычно использую активы.кодли.Ио
Он генерирует активы локально в вашем браузере, без загрузки, без загрузки.
Я использую инструмент под названием android Icon, установленный в Eclipse для стандартных значков, таких как Launcher, ActionBar, Tab icons и notification icons. Вы можете запустить его из файла --> New --> Other.. -- >Android - > Набор Значков Android. Лучше всего то, что вы можете выбрать любой файл с Вашего компьютера, и он автоматически разместит все изображения стандартных размеров в каталоге проекта.

Я думаю, что инструмент, предоставляемый Redwarp, является лучшим! https://github.com/asystat/Final-Android-Resizer
нашел его в этом другой вопрос: https://stackoverflow.com/questions/10754523/is-there-any-tool-which-can-a-resize-png-image-into-a-image-for-ldpi-mdpi-hdp
Так как это первый результат в Google, я хотел бы добавить эту информацию здесь.
Я написал сценарий Photoshop для создания файлов ic_launcher png из PSD-файла. Просто проверьте ic_launcher_exporter.
чтобы использовать его, просто загрузите его и используйте скрипт из photoshop.

и настройте, где вы хотите генерировать выходные файлы.

Мне повезло использовать этот плагин для photoshop:
есть некоторые работы, чтобы правильно назвать слои и состояния кнопок. Но, как только вы это сделаете, встроенные макросы очень хорошо.
в противном случае вы можете написать свои собственные макросы в photoshop, если у вас есть знания.
не 100% автоматически, но я экономлю много времени, используя Photoshop Действия.
вот, например,xhdpi активы, затем я создаю задачу для hdpi и mdpi, что Весы до 66,66% и до 44,44% соответственно. Затем я запускаю действия для всех изображений в папке xhdpi.
для 512x512 изображений все, что вам нужно сделать, это рассчитать, какой процент следует масштабировать изображения для достижения xxhpi, xhdpi, hdpi и mdpi.
- просто используйте https://romannurik.github.io/AndroidAssetStudio/index.html. Он может сделать набор иконок из изображения, позже вы можете скачать zip-файл.
- или загрузите приложение Windows по адресуhttps://github.com/redwarp/9-Patch-Resizer/releases (не нужно устанавливать) и откройте значок.
Используйте Android Studio Image Asset
на:
Project>res --> right click
new> image asset
затем установлено:
-Icon type: Launcher Icons
-Asset type: Image
-Path: the/path/to/your/image
-Trim: No
-Padding: 0%
-Shape: None
-Effect: None
Выберите: Далее>Готово.
Now you will have your icon in the correct resolutions.
EDIT: я рекомендую использовать изображения SVG для создания векторных чертежей, а затем использовать их в холсте, чтобы изменить их размер до нужного размера или просто изменить DP.
вы можете получить значки по умолчанию от Google или просто создать свой собственный
Project>res --> right click
new> vector asset
затем set:
-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.
Выберите: Далее>Готово.
теперь у вас будет значок, и вы сможете изменить размер, цвет и т. д.. .

существует также возможность использовать Vector Asset Studio в сочетании с масштабируемая векторная графика (SVG). Android Studio обработает остальное для вас. Как официальная документация говорит:
Vector Asset Studio позволяет добавлять значки материалов и импортировать масштабируемые Файлы векторной графики (SVG) в проект приложения в качестве drawable ресурс. По сравнению с растровыми изображениями, векторные чертежи могут уменьшить размер вашего приложения и быть размера без потери качества изображения. Они помогите вам более легко поддерживать различные устройства Android с различными размеры и разрешения экрана, поскольку можно отобразить один вектор мешочки на всех из них.
Я считаю это будущим подходом.
Я использовал решение весь этот путь в этой теме, и это легко работать с плагином Android Drawable Импортер
Если вы используете Android Studio на MacOS, просто попробуйте этот шаг, чтобы войти:
- выберите пункт меню Android Studio выберите предпочтения или нажмите кнопку команда + ,
- выберите Плагины
- клик обзор хранилища
- напишите в поиске coloumn Android Drawable Импортер
- клик установить
- и затем отображается диалог перезапуска, просто перезапустите его Android Studio
после ur успеха установки плагина, чтобы работать с ним этот плагин просто нажмите кнопку Создать новое меню, а затем выберите Пакетный Drawable Импорт. Затем нажмите кнопку Плюс a.к. кнопка "Добавить" и выберите файл для создания drawable. А затем просто нажмите кнопку ОК и ОК drawable имеет сделать это все из них.
Если вы путаете с моим словом, просто посмотрите учебник по изображению из learningmechine.









