![]() |
Загрузка изображений по HTTP
Вложений: 2
Вопрос к уважаемому pilgrim-у:
с сайта SUN взял пример кода для загрузки изображений по http http://developers.sun.com/techtopics...hod/index.html (о чем тут многие задают вопросы), попробовал сделать из него библиотеку для паскаля... библиотека компилится, паскаль ее глотает, но вместо загрузки картинки мидлет просто виснет... Подскажи, что я сделал не так? |
Re: Загрузка изображений по HTTP
Вложений: 2
Lib_im с примером
image_from_url(url) image_from_string(string) PS: это небольшая переработка библиотеки, которая лежала на midletpascal.com |
Re: Загрузка изображений по HTTP
Выходит, пример с сайта SUN - лажа?... Или все-таки я его испохабил?
|
Re: Загрузка изображений по HTTP
Цитата:
какую сторку ей надо передать? пытался прочитать файл в строку и передать процедуре-бесполезно |
Re: Загрузка изображений по HTTP
Можно сделать чтобы скачанная картинка грузилась на форму вот таким способом imageID:=FormAddImage(LoadImage(img)) ?
Если делать drawImage - то это уже Convas! |
Re: Загрузка изображений по HTTP
Цитата:
|
Re: Загрузка изображений по HTTP
Только что, до прочтения сообщения заново скомпилировал прогу и загрузилось!
Надо было так писать: img:=im.image_from_url('http://www.site.ru/pic.png'); imgID := FormAddImage(img); |
Re: Загрузка изображений по HTTP
Почему-то эмулятор загружает картинки этим способом, а мобильник не нет. Телефон Nokia S60 Symbian 7. В чём может быть проблема? Как сделать чтобы загружалось?
|
Re: Загрузка изображений по HTTP
Может профиль интернета для Java не настроен или защита не позволяет выход в инет (смотри настройки безопасности).
|
Re: Загрузка изображений по HTTP
Написал в конце "showform;" и на телефоне тоже стало отображаться.
Теперь другой вопрос: Как отобразить картинку jpeg? Так: im.image_from_url она загружается, но не отображается. Может как-то переконвертировать в памяти изображение в png или gif ? Но как? Или может есть библиотеки для того чтобы отображались jpeg? |
Re: Загрузка изображений по HTTP
Да вообще-то обычно java все равно, какой формат, лишь бы мобила поддерживала. Я например загружал изображение из фс, даже если поменять расширение(например с jpg на bmp).
|
Ответ: Загрузка изображений по HTTP
А можно сделать функцию наоборот imageToString?
|
Ответ: Загрузка изображений по HTTP
Можно. Только вот как ее применять? Она будет несовместима ни с одним графическим форматом, только внутренне применение.
|
Ответ: Загрузка изображений по HTTP
Вложений: 1
Вот библиотека для преобразования изображения в строку.
P.S. cHeRsAnYa, достаточно было написать запрос в одной теме. |
Ответ: Загрузка изображений по HTTP
Спасибо. Как можно сделать, чтобы изображение сохранялось на сервере с возможностью последующего просмотра? Скрипт не проблема.
|
Ответ: Загрузка изображений по HTTP
Ты же вчера спрашивал, как сделать POST запрос. Там есть функция addHttpBody.
|
Ответ: Загрузка изображений по HTTP
Ты писал "Она будет несовместима ни с одним графическим форматом, только внутренне применение.". Вот я и спрашиваю.
|
Ответ: Загрузка изображений по HTTP
Имеется в виду, что отправить его можно, но ни одна стандартная программа не сможет его обработать.
|
Ответ: Загрузка изображений по HTTP
Мда-уж. Учись задавать более конкретные вопросы. Как я уже сказал, преобразование изображения в строку тебе не поможет в данном случае. Здесь надо совместить код нескольких библиотек. Придется немного подождать. Из возможных форматов сохранения будут bmp и png. А при работе с камерой, наверное и jpg.
|
Ответ: Загрузка изображений по HTTP
Тоесть пока (с имеющимися библиотеками) невозможно отправить картинку с камеры на сервер в формате jpg?
|
Re: Загрузка изображений по HTTP
Тогда, если можно, хотелось бы чтобы можно было по фтп отправлять (хочу что-то вроде веб камеры сделать, только чтобы без серверных скриптов, на любой хост заливалось)
|
Ответ: Загрузка изображений по HTTP
Приветствую всех!
Что-то не могу заставить работать Lib_im.class. Даже приведённый Pilgrim'ом в одном из верхних постов пример напрочь не работает: Код:
program ImageDemo; Обратное преобразование (ImageToString) и библиотека Lib_imtostr.class тоже напрочь не работают. :( Как быть? Где собака порылась? Я пытаюсь сделать загрузку изображний по HTTP, сохранение их в RecordStore и затем воспроизведение по запросу. Может быть, посоветуете какие-то более простые пути для решения этой задачи? |
Ответ: Загрузка изображений по HTTP
Да у меня все нормально, только грузит долго, подождать надо.
|
Ответ: Загрузка изображений по HTTP
Гм, загрузил это на эмулятор от SE - всё заработало.
А на эмуляторах SjBoy и MidpX - не работает. :dontknow: Ну что ж, буду разбираться дальше. |
Ответ: Загрузка изображений по HTTP
Никак не могу понять - в каком формате должен быть string при использовании image_from_string.
PHP код:
|
Ответ: Загрузка изображений по HTTP
Цитата:
|
Ответ: Загрузка изображений по HTTP
Коллеги, взываю о помощи!
Почти целый день сегодня ковырялся с созданием картинки из строки - ничего не получается. :wallbash: Вот скажите, где я не прав? В чём ошибка? Код:
program ImageDemo; |
Ответ: Загрузка изображений по HTTP
Так а чем Image_from_url не устраивает?
Во-первых советую посмотреть, что находится в строке, получаемой с сервера. Во- вторых, я как-то пытался читать файл в строку и передавать её этой функции - ничего не получилось. |
Ответ: Загрузка изображений по HTTP
В строке от сервера выдаётся точно именно эта картинка. Длина строки соответствует размеру картинки в байтах.
Дело в том, что требуется дёрнуть картинку с сервера только один раз, а затем сохранить её в RecordStore и отображать уже без необходимости закачки данных с сервера. Других вариантов, кроме как Image_From_String, я здесь не вижу. Я уже слегка в отчаянии. :( |
Ответ: Загрузка изображений по HTTP
Тогда так:
1. Грузим картинку с сервера с помощю Image_from_url. 2. Преобразуем её в массив значений ARGB. 3. Сохраняем данные из массива в RS. 4. Грузим данные из RS в массив. 5. Преобразуем ARGB обратоно в Image и выводим его. Минус такого подхода - медленная работа и отсутствие сжатия данных. |
Ответ: Загрузка изображений по HTTP
Я тоже думал об этом. Но это же такие тормоза будут!
К тому же, если картинка размером 240x320 в формате JPEG/PNG занимает около 10 кб, то при хранении в ARGB она будет занимать 240x320x4 = 307200. Это почти в 30 раз больше. Не, это совсем не вариант. :( |
Ответ: Загрузка изображений по HTTP
Есть вопрос. Он касается как данной библиотеки, так и библиотеки web.
Что произойдёт, если будет попытка загрузки изображения (или любых других данных по HTTP) в случае нестабильной или отсутствующей связи? Особенно в такие неприятные моменты, когда сеть практически отсутствует, но при этом телефон ловит лишь спецсигналы о наличии GPRS и т.п. (например, в туннелях, в закрытых помещениях, в перегонах метро). В этом случае коннект есть только формальный, реально данные по HTTP телефон получить не может, в результате чего мидлет просто зависает. Проверял лично. По идее, тут нужно ставить либо таймаут ответа (например, 3-4 секунды), либо как-то корректно обрабатывать exception. Как это сделать при использовании библиотек - непонятно. Уважаемые коллеги, что вы можете посоветовать? |
Ответ: Загрузка изображений по HTTP
по идее, в данном случае, библиотека должна отловить исключение и выдать null, т.е. что есть проблемы с загрузкой.
|
Ответ: Загрузка изображений по HTTP
Понимаешь, если бы коннекта не было, то быть может она и отловила бы.
А так коннект вроде есть, но скорость скачки 2 байта в секунду. |
Ответ: Загрузка изображений по HTTP
Вопрос в том, предусмотрена ли функция для отмены передачи/приема данных. Если да - добавить таймер (TimerTask), который будет следить за таймаутом, и в случае зависания останавливать обработку запроса.
|
Ответ: Загрузка изображений по HTTP
Вложений: 1
что-то imageTostring толком не работает
Вложение 11688 во второй строчке содержимое получамой строки при другом изображении изменяются лишь символы после @ скрин с эмулятора, на телефоне строчка другая: javax.microedition.lcdui.Image@130b... |
Ответ: Загрузка изображений по HTTP
Цитата:
Посмотрю, как можно получить данные. |
Ответ: Загрузка изображений по HTTP
А как обрабатывать ошибки? например вот пример ошибки :
![]() произошла ошибка из за того что изображение было удалено, но тогда в итоге мидлет намертво виснет... |
Ответ: Загрузка изображений по HTTP
мне удалось защитить библиотеку от попадания на несуществующие файлы но теперь другая ошибка,вот пример изображения из за которого вылетает ошибка:
![]() Код:
|
Часовой пояс GMT +4, время: 19:20. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot