Открытие изображения в TImage с сервера

Я работаю над огромным проектом, используя Delphi XE5, ядром программы является открытие изображения с помощью компонента TImage в приложении, но изображение находится на сервере, доступ к которому осуществляется через Интернет. Отображаемое изображение зависит от критериев, установленных посредством других событий или действий пользователя. У меня уже есть код критериев и т. д., мне нужно только часть отображения изображения.

Какие другие компоненты мне нужно использовать, кроме компонента TImage, чтобы это произошло, и как это сделать? Я искал ответы больше недели и не мог найти что-то, что работает.

Это также многоплатформенное приложение.


person Harmdw    schedule 08.05.2014    source источник
comment
это приложение Firmenonkey или VCL?   -  person Ryno Coetzee    schedule 08.05.2014
comment
Пожалуйста, определите доступ через Интернет, потому что вам нужно передать некоторые данные (изображение)   -  person Sir Rufo    schedule 08.05.2014
comment
Это приложение Firemonkey, которое я должен скомпилировать для Windows, Android, IOS и OS X.   -  person Harmdw    schedule 08.05.2014
comment
Имея доступ через Интернет, я имею в виду, что люди должны иметь возможность использовать приложение из своих домов, но все изображения хранятся на сервере на рабочем месте, поэтому я предполагаю, что оно должно получать изображение с сервера, хотя Интернет не локальный.   -  person Harmdw    schedule 08.05.2014
comment
Чтобы внести больше ясности в мой вопрос. Как указать путь к компоненту TImage для отображения изображения?   -  person Harmdw    schedule 08.05.2014
comment
Очевидно, что через интернет предполагается получить какие-то данные вообще откуда-то. Это также может означать, что вы позвоните кому-нибудь через скайп, чтобы отправить вам изображение, и вы получите изображение по почте - все это делается через Интернет. Пожалуйста, уточните свой вопрос   -  person Sir Rufo    schedule 08.05.2014
comment
Вы удосужились погуглить это?   -  person Kell    schedule 08.05.2014
comment
По мнению Руфо, вам нужно определиться с механизмом, с помощью которого приложение будет запрашивать файл, а сервер будет его обслуживать. Возможно, вы захотите написать веб-сервис, вы можете предоставить общий доступ к файлам через VPN, сервер может отправить файл по электронной почте ... список возможностей бесконечен. Мы не можем дать окончательный ответ, пока вы не выберете подходящую технологию. Однако начните с некоторого исследования веб-сервисов.   -  person Hugh Jones    schedule 08.05.2014
comment
Позвольте мне сначала дать определение слову «Интернет», а затем перефразировать вопрос еще более простыми словами… Интернет — это глобальная система взаимосвязанных компьютерных сетей, которые используют стандартный набор интернет-протоколов (TCP/IP) для связи нескольких миллиардов устройств… Чтобы Проще говоря, это ОГРОМНАЯ сеть ... Итак, что нужно сделать, так это то, что изображение, которое находится на сервере компании (какая разница, где), должно отображаться в объекте Timage в зависимости от ввода пользователей. Еще проще, мне нужно получить доступ к изображению через сеть (это Интернет) и отобразить его в форме...   -  person Harmdw    schedule 08.05.2014
comment
Да, и насчет того, что я погуглил, я неделю сидел в интернете и не мог найти то, что искал, поэтому и задал вопрос здесь. И я не имею в виду никакого неуважения к этому.   -  person Harmdw    schedule 08.05.2014


Ответы (2)


Нашел то, что искал, в FireMonkey. iOS RAD Studio XE2 — Отображение изображения в форме, загруженной с URL-адреса, хотя это немного медленно, но на данный момент оно отлично справляется со своей задачей.

person Harmdw    schedule 08.05.2014
comment
Хорошо, вы решили получить изображение через http, а не через ftp, pop3, imap и т. д. (кстати ... все они являются хорошо известными транспортными протоколами, основанными на tcp, и все они работают через интернет). Это была недостающая часть, потому что мы не знаем ваш сервер и какие протоколы он может обслуживать, а вам разрешено устанавливать. - person Sir Rufo; 09.05.2014
comment
Ааа, теперь я понимаю, что вы имели в виду. Но спасибо за интерес и помощь. - person Harmdw; 09.05.2014

Ну, вы можете загрузить TBitmapImage или TJPEGImage из потока, а затем вставить его в свой TImage. Однако перед этим вам нужно будет узнать тип изображения. Вот пример использования TJPEGImage: поток данных JPEG в TImage

person Kell    schedule 08.05.2014
comment
Поскольку я пишу приложение firemonkey, оно, похоже, не распознает модуль JPEG в предложении uses, когда я его добавляю. - person Harmdw; 08.05.2014
comment
Почему минус? В firemonkey TBitmap.LoadFromStream загружает все поддерживаемые форматы. docwiki.embarcadero.com/Libraries/XE2/en/ - person Kell; 08.05.2014