Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Генерирование изображений с помощью IdHTTPServer [D7, WinXP]


BFG9k ©   (2006-08-30 14:13:00) 

Нужна ссылка или пример вывода динамического (то есть не существующего на диске)изображения с помощью idHTTPServer


BFG9k   (2006-08-31 17:28:00) [1]

Ого, сколько тут написали. [6] было вполне достаточно :) О том, что картинки запрашиваются уже после документа, который их содержит, автор вопроса знал и до вас. Думаю, тему можно закрыть.


Орион   (2006-08-30 17:12:00) [2]

> [16] Reindeer Moss Eater ©   (30.08.06 16:53)

Каюсь, сам не понял вопроса. Но ведь правильно заданный вопрос - это половина ответа)


Reindeer Moss Eater   (2006-08-30 16:53:00) [3]

Ок. Согласен.
Только как же  далек этот окончательный вариант от того, что было в [7]


Орион   (2006-08-30 16:49:00) [4]

> [14] Reindeer Moss Eater ©   (30.08.06 16:34)

цитирую:
"допустим рисуешь на канве, сохраняешь изображение в файл, считываешь файл в память, удаляешь файл".


Reindeer Moss Eater   (2006-08-30 16:34:00) [5]

Тормоз или где?
Я тебе про что говорю?

q: - Как генерировать?
a: - Вот тут-то ты и генерируешь ее

И сейчас не дошло?


Орион   (2006-08-30 16:30:00) [6]

> [12] Reindeer Moss Eater ©   (30.08.06 15:50)

Хм... Я вроде как дальше все описал ;) Учимся читать посты до конца.
А если у вас, уважаемый, депрессия, то это не мои проблемы))


Reindeer Moss Eater   (2006-08-30 15:50:00) [7]

Правильно. В код страницы вставляешь адрес "несуществующего ресурса".
Например:


И чего?
Думаешь у него без тебя нет ссылки на несуществующий ресурс?
Или ты думаешь, что idHTTPServer сам достанет из кармана контент по пришествии этой ссылки?


Орион   (2006-08-30 15:41:00) [8]

хм... ок.

> [0] BFG9k ©   (30.08.06 14:13)



> При помощи idHTTPServer в OnCommandGet с помощью шаблона
> генерируется HTML страница.

Правильно. В код страницы вставляешь адрес "несуществующего ресурса".
Например:
<img src=" http://127.0.0.1/graphic.jpg" width="" height="" alt="">
Отдаешь страницу браузеру.

Когда браузер будет парсить переданную сервером страницу и натолкнется на   http://127.0.0.1/graphic.jpg , то запросит у сервера эту картинку.

Вот тут-то ты и генерируешь ее (удобным способом, допустим рисуешь на канве, сохраняешь изображение в файл, считываешь файл в память, удаляешь файл) и передаешь серверу с полем "content-type: image/jpeg" и content-length: размер_изображения.

Вот и все.
Успехов.


Reindeer Moss Eater   (2006-08-30 15:33:00) [9]

Мне интересно что он такого нового стал знать после [7]?

Если в вопросе (переведенном на нормальный язык) спрашивалось как сделать так, что бы сервер отдавал ресурс, которого нет на диске?

И ответ из [7]:
"Надо что бы сервер отдал ресурс которого нет на диске по ссылке."


Орион   (2006-08-30 15:30:00) [10]

> [8] Reindeer Moss Eater ©   (30.08.06 15:14)


Вы может и знали, но вот автор вопроса явно нет.


Reindeer Moss Eater   (2006-08-30 15:14:00) [11]

да што ты говоришь? а мы и не знали.


Орион   (2006-08-30 15:11:00) [12]

гы-гы)) все прочитал, долго смеялся))
Короче делается это так:



Далее браузер запрашивает эту старницу и вебсервер выдает сгенеренную картинку с content-type: image/jpeg (gif, png).

Вот и все)) » Palladin: » Да, именно так, используя HTML, можно вставить изображение на страничку и именно так реагирует веб-сервер на запрос. Знание, для начинающих сайто-строителей, очень полезное. Но, к сожалению, автору вопроса это знание сильно помочь не может. Кроме, разве что, подсказкой по поводу content-type. Вот и все.


Reindeer Moss Eater   (2006-08-30 14:35:00) [13]

Ну и в чем проблема?

AResponseInfo.ContentStream := Поток_содержащий_твой_график.


BFG9k   (2006-08-30 14:33:00) [14]

Динамически генерируемое изображение не существует на диске. График рисуется на основе каких-либо данных (например статистики посещений сайта), скажем с помощью TBitmap. А затем этот TBitMap нужно передать клиенту с помощью AResponseInfo в обработчике OnCommandGet.


Reindeer Moss Eater   (2006-08-30 14:28:00) [15]

Страница может содержать динамические изображения, скажем графики.

И где находятся твои графики?
Тоже забыл?


BFG9k   (2006-08-30 14:23:00) [16]

Умники. При помощи idHTTPServer в OnCommandGet с помощью шаблона генерируется HTML страница. Страница может содержать динамические изображения, скажем графики. Я видел нужный пример, но к сожалению не запомнил ссылку :(


Palladin   (2006-08-30 14:18:00) [17]

Наверное он должен в этом как то помочь :) морально хотябы..


Reindeer Moss Eater   (2006-08-30 14:13:00) [18]

При чем здесь idHTTPServer?


Наверх

Титульная страница Поиск, карта сайта Написать письмо