Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.01.2009, 06:16   #1
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию TWebBrowser - сохранить картинку

Здравствуйте.
Знаю как сохранить HTML-код страницы, но не понял как сохранить картинку.
О программе:
Всё просто, TWebBrowser открывает заранее указанный URL и это адрес картинки, нужно просто сохранить её на диск, но как вызвать это действо я не знаю, подскажите пожалуйста.

Заранее благодарен.
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 14.01.2009, 09:15   #2
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

Решение найдено.
http://programmersforum.ru/showpost....11&postcount=2

Благодарю:
Vitееf
Квэнди
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 14.01.2009, 15:18   #3
QunneD
C++ & PHP & Asm
Форумчанин
 
Аватар для QunneD
 
Регистрация: 06.12.2008
Сообщений: 300
По умолчанию

Эх, вот мой способ. Мало-ли захочешь его использовать

Код:
var
   img : String;
   scr : TStringList;
begin
   img := 'http://site.com/image.jpg';
   scr := TStringList.Create;
try
   scr.Add(idHTTP1.Get(img));
finally
   scr.SaveToFile('image.jpg');
   scr.Free;
end;
end;

Последний раз редактировалось QunneD; 14.01.2009 в 20:05.
QunneD вне форума Ответить с цитированием
Старый 14.01.2009, 15:32   #4
Alar
Александр
Администратор
 
Аватар для Alar
 
Регистрация: 28.10.2006
Сообщений: 17,655
По умолчанию

Air, этот способ сохраняет не через TWebBrowser, а закачивает по http протоколу из сети.
То что вы видите в WebBrowser можно взять из кеша или WebBrowser.document
Alar вне форума Ответить с цитированием
Старый 14.01.2009, 19:13   #5
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

QunneD Спасибо, приму к сведению.
Alar Как мне достать картинку из WebBrowser.document?
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Старый 15.01.2009, 11:44   #6
asdfg
Новичок
Джуниор
 
Регистрация: 15.01.2009
Сообщений: 1
По умолчанию

а как получить адреса всех картинок из WebBrowser?
asdfg вне форума Ответить с цитированием
Старый 15.01.2009, 22:54   #7
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Как пример посоветую пропарсить тэг <img>, хотя там наверняка есть чтото эдакое
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 16.01.2009, 02:31   #8
Air
Участник клуба
 
Аватар для Air
 
Регистрация: 30.04.2007
Сообщений: 1,307
По умолчанию

asdfg

Код:
uses SHDocVw;
...
function WebBrowser_GetHTMLCode(WebBrowser:TWebBrowser; ACode:TStrings):Boolean;
var
 ps:IPersistStreamInit;
 ss:TStringStream;
 sa:IStream;
 s:string;
begin
ps:=WebBrowser.Document as IPersistStreamInit;
s:='';
ss:=TStringStream.Create(s);
try
 sa:=TStreamAdapter.Create(ss,soReference) as IStream;
 Result:=Succeeded(ps.Save(sa,True));
 if Result then ACode.Add(ss.Datastring);
 finally
  ss.Free;
 end;
end;
В переменной ACode содержится массив строк HTML.
Можно назначить поиск командой Find, первым параметром задать искомое слово(<img), а второй вернёт индекс строки, которую потом нужно просканировать до значения <img src="">
далее уже сохранять строку в текстовую переменную и когда в поиске встретится код "> прекратить сканирование строки.
в той переменной должен быть адрес картинки.

всю процедуру нужно запускать циклом, чтоб отсканировать весь массив ACode.
_
Как-то так...
Всё гениальное - просто!
Air вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
TWebBrowser DeDoK Общие вопросы Delphi 9 03.06.2008 18:30
TWebBrowser + IE 7.0 Diogo Общие вопросы Delphi 5 27.01.2008 12:43
картинку в image vitalik007 Общие вопросы Delphi 2 05.11.2007 21:10
Вертеть картинку KAMASUTR Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 10.08.2007 07:41