Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Star2016
5 / 5 / 0
Регистрация: 26.07.2016
Сообщений: 233
#1

Как пересохранить изображение с уменьшенным разрешением - Программирование Android

18.12.2016, 14:14. Просмотров 197. Ответов 3
Метки нет (Все метки)

Ситуация - есть путь до файла (полный) Файл - это изображение из галереи с большим разрешением
Например 4000 на 2300 пикселей. Как можно пересохранить фото в папку программы в памяти телефона (не sd) с разрешением по горизонтали 300 пикселей а по вертикали как то рассчитать чтобы без искажений.
То есть фактически задача создать уменьшенное по размеру изображение. В случае если исходное изображение по горизонтали меньше 300 пикселей то просто скопировать в папку программы без изменения размеров . Как такое можно сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2016, 14:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как пересохранить изображение с уменьшенным разрешением (Программирование Android):

Проблемы с разрешением экрана - Программирование Android
Добрый день форумчане давно не заходил на ваш сайт))Рад вашей помощи)) ImageView iv = new ImageView(poisk.this); ...

Пересохранить изображение с новым разрешением - Visual Basic .NET
Всем привет, у меня такой вопрос появился, имеются два кода (не мои, нашел здесь на форуме), один через диалоговое окно дает выбрать файл...

Как пересохранить изображение - C#
Как сохранить с верх файла... Подскажите

После альттаба из игры на рабочий стол разрешение остается уменьшенным, как в игре - Мониторы
Здравствуйте! Я играю в игру.Она работает на разрешении 1280х720,в то время как монитор имеет разрешение 1920х1080. После альттаба на...

Как пересохранить проект? - Delphi
Приветствую... Знаю что тупой вопрос, но всё же, как пересохранить (сохранить поновому, заного) проэкт на Delphi 7 ? Например: открыл ...

Как пересохранить файл? - Flash
Подскажите как пересохранить файл (расширение fla) из Flash CS5 во Flash 8? Возможно ли это вообще?

3
shavuz
111 / 117 / 23
Регистрация: 29.01.2014
Сообщений: 584
19.12.2016, 18:08 #2
вот так уменьшают:
Java
1
2
3
4
5
6
7
float aspectRatio = yourSelectedImage.getWidth() / 
    (float) yourSelectedImage.getHeight();
int width = 480;
int height = Math.round(width / aspectRatio);
 
yourSelectedImage = Bitmap.createScaledBitmap(
    yourSelectedImage, width, height, false);
вот так сохраняют:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
private void SaveIamge(Bitmap finalBitmap) {
 
    String root = String path = getFilesDir().getAbsolutePath().toString();
    File myDir = new File(root + "/saved_images");    
    myDir.mkdirs();
    Random generator = new Random();
    int n = 10000;
    n = generator.nextInt(n);
    String fname = "Image-"+ n +".jpg";
    File file = new File (myDir, fname);
    if (file.exists ()) file.delete (); 
    try {
           FileOutputStream out = new FileOutputStream(file);
           finalBitmap.compress(Bitmap.CompressFormat.JPEG, 90, out);
           out.flush();
           out.close();
 
    } catch (Exception e) {
           e.printStackTrace();
    }
}
and add in manifest:
 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
1
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
19.12.2016, 21:28 #3
shavuz, зачем значение n создавать используя рандом? В таком случае, лучше System.currentTimeMillis()
0
shavuz
111 / 117 / 23
Регистрация: 29.01.2014
Сообщений: 584
20.12.2016, 09:30 #4
Цитата Сообщение от den_droid Посмотреть сообщение
зачем значение n создавать используя рандом? В таком случае, лучше System.currentTimeMillis()
незачем. это пример. откуда я знаю как человек хочет называть сфои сохраненные картинки, может вы еще спросите почему тут String fname = "Image-"+ n +".jpg"; image в названии а не pic например, или почему .jpg а не png ^-)
0
20.12.2016, 09:30
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.12.2016, 09:30
Привет! Вот еще темы с ответами:

Как правильно пересохранить проект?? - Delphi
Вот такая ситуация...Создала проект в делфи, все уже прописала, все сделала, а имя в самом начале так и осталось Project1. Мне нужно его...

Как пересохранить БД из 2010 в 2003? - MS Access
Подскажите как пересохранить базу данных 2010 в бд 2003?очень надо)

Как пересохранить проект под другим именем? - Visual Studio
Это наверное очень глупый вопрос, но всё же... Несколько месяцев назад я сделал программу с помощью windows form в visual studio, и...

Как программно пересохранить word-овский документ в файл с расширением «.rtf» - Visual Basic
Dim word = New Word.Application word.Documents.Open(&quot;\...\Doc1.doc&quot;) ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru