Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
 
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
#1

как открыть картинку (и по возможности большого размера 10000х12000) - Android

14.02.2016, 23:36. Просмотров 622. Ответов 21
Метки нет (Все метки)

Всем привет!
уже перепробовал множество вариантов : пробовал в имадж_вью но остановился на вэб_вью.
где-то в коде чего-то не указал и при этом появляется "веб страница не доступна или отключена. "

код активити
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebView;
import android.widget.ImageView;
 
 
import java.io.File;
import java.net.URI;
 
public class ActivityTwo extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_activity_two);
 
 
       // File sdPathS = Environment.getExternalStorageDirectory();
        // sdPathS = public File(sdPathS.getAbsolutePath() + "//DCIM//Karta_rajona_sat.jpg");//
 
       // Uri uri= Uri.parse(sdPathS.getAbsolutePath() + "//DCIM//Karta_rajona_sat.jpg");
        //ImageView imageView = (ImageView) findViewById(R.id.imageView);
        //imageView.scrollBy(100,100);
       // imageView.getScrollBarSize();
       // imageView.setImageURI(uri);//"/mnt/sdcard/DCIM/Karta_rajona_sat.jpg"
        //imageView.setImageURI(URI.parse("file://mnt/sdcard/cat.jpg"));
      // sdPathS   = (ImageView)findViewById(R.id.imageView);
      //  imageView.setImageDrawable(Drawable.createFromPath(uri.getPath()));//"//mnt//sdcard//DCIM//Karta_rajona NODE map.jpg"
        WebView WV = (WebView)findViewById(R.id.webView);
        WV.getSettings().setSupportZoom(true);
        WV.getSettings().setBuiltInZoomControls(true);
        WV.setPadding(0, 0, 0, 0);
        WV.setScrollbarFadingEnabled(true);
        WV.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        WV.loadUrl(uri.getPath());
 
    }
 
    File sdPathS = Environment.getExternalStorageDirectory();
   // sdPathS = public File(sdPathS.getAbsolutePath() + "//DCIM//Karta_rajona_sat.jpg");//
 
    Uri uri= Uri.parse(sdPathS.getAbsolutePath() + "/DCIM/Karta_rajona_sat.jpg");
    //Uri.fromFile( new File(sdPathS.getAbsolutePath() + "//DCIM//Karta_rajona_sat.jpg") );
    // ImageView imageView = (ImageView) findViewById(R.id.imageView);
    // imageView.setImageURI(uri);//"/mnt/sdcard/DCIM/Karta_rajona_sat.jpg"
}
подскажите как открыть картинку в веб_имадж?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.02.2016, 23:36     как открыть картинку (и по возможности большого размера 10000х12000)
Посмотрите здесь:

Как записать/прочитать картинку? Android
Android Как передать картинку через интент
Android Как сделать картинку фоном?
Как передать целочисленную переменную и картинку из сервиса в активити? Android
Android Открыть картинку, название которой записано в переменную
Android ImageView, как наложить картинку на картинку?
Как прочитать картинку с сервера по http? Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
14.02.2016, 23:43     как открыть картинку (и по возможности большого размера 10000х12000) #2
lifeforce, "как открыть картинку (и по возможности большого размера 10000х12000)?" - Никак. Конец.
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
14.02.2016, 23:45  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #3
YuraAAA, и чё??? безвыходное положение???

Добавлено через 48 секунд
этот код даже и маленькую картинку не открывает!
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
15.02.2016, 00:50     как открыть картинку (и по возможности большого размера 10000х12000) #4
lifeforce, памяти не хватит загрузить такую картинку. А где у Вас они лежат? Путь 100% неправильный
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 00:56  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #5
YuraAAA,
сейчас пытаюсь создать кеш.
вроде правильно указан
пробовал и 1мегабайт картинку - тоже не грузит. а в имадж вью отображает (если маленькая картинка конечно-же).
Миниатюры
как открыть картинку (и по возможности большого размера 10000х12000)  
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
15.02.2016, 01:03     как открыть картинку (и по возможности большого размера 10000х12000) #6
Цитата Сообщение от lifeforce Посмотреть сообщение
сейчас пытаюсь создать кеш.
Кэш чего, для чего и где?
Нельзя так открыть картинку.
Java
1
2
3
4
5
6
7
8
WV= (WebView) findViewById(R.id.webview);
WV.getSettings().setAllowFileAccess(true);
WV.getSettings().setJavaScriptEnabled(true);
WV.getSettings().setBuiltInZoomControls(true);
String base = Environment.getExternalStorageDirectory().getAbsolutePath().toString();
String imagePath = "file://"+ base + "/Karta_rajona_sat.jpg";
String html = "<html><head></head><body><img src=""+ imagePath + ""></body></html>";
WV.loadDataWithBaseURL("", html, "text/html","utf-8", "");
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 01:17  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #7
YuraAAA,

какой-то прогресс есть!
а в этой строке похоже была опечатка.
Java
1
String html = "<html><head></head><body><img src="+ imagePath +"></body></html>";
ошибки при загрузке не выдает но и изображение тоже нет
Миниатюры
как открыть картинку (и по возможности большого размера 10000х12000)  
Lumber
96 / 96 / 37
Регистрация: 02.12.2015
Сообщений: 236
15.02.2016, 01:21     как открыть картинку (и по возможности большого размера 10000х12000) #8
Не стал бы так категорично утверждать что большую картинку вообще никак не открыть. Можно по частям загружать и показывать или масштабировать. В памяти она не обязана целиком находится в декодированном виде.
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 01:24  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #9
Lumber,
допустим мне нужно открыть картинку на экране в нормальном масштабе, но только ее часть по координатам Х и У .
если это возможно то как реализовать?
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
15.02.2016, 01:35     как открыть картинку (и по возможности большого размера 10000х12000) #10
Lumber, боюсь спросить как Вы это реализовывать собрались. И тем более, зачем.

Добавлено через 6 минут
Lumber, и как же она будет храниться в памяти?
Lumber
96 / 96 / 37
Регистрация: 02.12.2015
Сообщений: 236
15.02.2016, 01:42     как открыть картинку (и по возможности большого размера 10000х12000) #11
Есть разные пути:

1. Поискать библиотеки которые могут распаковывать JPG по частям.

2. Написать свой декодер JPG который это может. Думаю это довольно затратно.

3. Нарезать картинку на множество мелких квадратов. 512*512 например (jpg можно нарезать без перекодирования и без потери качества если размер фрагмента кратен 8 пикселам). Загружать и показывать те которые в данный момент на экране видны. При прокрутке новые подгружать, старые освобождать. Кусочки картинки можно в SQLite хранить.

Цитата Сообщение от YuraAAA Посмотреть сообщение
И тем более, зачем.
растровая карта. спутниковые снимки.
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 01:55  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #12
точно такую-же программу я написал на С++ . и там чтоб работать с картой (канва и прочее) картинка должна быть в BMP . естественно сто если карта спутник 35мега то в бмп она станет 345 мега. но для компа это не проблема.
сейчас хочу реализовать похожую программу на андроид. только поиск по координатам . типа есть координата Х У которую я знаю - теперь мне надо переместиться на это место и показать на экране примерно по центру чтоб была та координата.
Миниатюры
как открыть картинку (и по возможности большого размера 10000х12000)  
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 02:36  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #13
открыл файл jpg с размером 38 мега
и пробовал и в 1 мег тоже самое.
может денсити надо изменить?
Миниатюры
как открыть картинку (и по возможности большого размера 10000х12000)  
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
15.02.2016, 13:06  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #14
заметил еще одну проблему
если файл картинки имеет пробел - то результат будет как на картинке выше с изображением вопросительного знака.
Karta_rajona sat.jpg эту картинку не откроет!
Karta_rajona_sat.jpg а так все работает.
проблемав том что я скачиваю с интернета карту и в ней есть пробел.
пробовал
Java
1
imagePath.toString()
результата нет. какую команду надо дать чтоб прочитать картинку с пробелом в WebView?
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
17.02.2016, 21:34     как открыть картинку (и по возможности большого размера 10000х12000) #15
XML
1
"<img src='"+ imagePath +"'>"
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
17.02.2016, 23:33  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #16
проблема что на всех девайсах увеличение картинки размазано.
только на телефоне ZERO открылась карта с нормальным зумом, и увеличенном ( и картинка была прекрасно видна со всеми надписями!)
Миниатюры
как открыть картинку (и по возможности большого размера 10000х12000)  
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
17.02.2016, 23:34  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #17
может какие-то настройки на самом девайсе надо поменять?
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
18.02.2016, 13:09     как открыть картинку (и по возможности большого размера 10000х12000) #18
lifeforce, можно использовать библиотеки, например, эту. Правда под нее нужно предварительно нарезать большую картинку на мелкие и дать им определенные названия.
lifeforce
63 / 56 / 10
Регистрация: 27.09.2010
Сообщений: 480
18.02.2016, 13:40  [ТС]     как открыть картинку (и по возможности большого размера 10000х12000) #19
Spelcrawler,
спасибо! посморю .
ето типа как программа САСПЛАНЕТ там тоже на кусочки нарезана картинка.
но мне в будующем надо будет добавить функцию поиска и ставить метку на карте по уже знакомъм координатам
как показано на рисунке въше.
черт на болгарской каве нет буквъ bI
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.02.2016, 13:41     как открыть картинку (и по возможности большого размера 10000х12000)
Еще ссылки по теме:

Android Как прочитать видео или картинку из личных сообщений вк?
ImageView большого размера Android
Android Как заставить вращаться картинку кодом?
Android Как сделать меняющуюся картинку в header
Android Как открыть web-страницу как это сделано в Telegram?

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

Или воспользуйтесь поиском по форуму:
Spelcrawler
523 / 493 / 111
Регистрация: 12.03.2014
Сообщений: 1,646
Завершенные тесты: 1
18.02.2016, 13:41     как открыть картинку (и по возможности большого размера 10000х12000) #20
lifeforce, там все это есть, описано в README.
Yandex
Объявления
18.02.2016, 13:41     как открыть картинку (и по возможности большого размера 10000х12000)
Ответ Создать тему
Опции темы

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