Вверх ↑
Этот топик читают: Гость
Ответов: 95
Рейтинг: 10
#1: 2010-06-03 14:55:29 ЛС | профиль | цитата
Пытаюсь сделать приложение для создания полного скриншота веб страницы.
Столкнулся с огромной проблемой...
Конечно можно было бы просто после загрузки веб страницы в браузер программы, делать скриншот, эмулировать нажатия клавиши PageDown или клика мыши, потом опять делать скриншот... Потом склеивать эти картинки
Примерно так...
code_18678.txt
Но так программа никак не сможет понять когда ей остановиться, да и вообще получится кривовато

В любом случае надо изначально действовать по другому, посылать сообщение окну браузера, а точнее его элементу полосе прокрутки еще и получать какой то ответ о его положении... 0_о
Возможно ли вообще такое?
Вычитал что нужно перехватить IShellWindows, получить IWebBrowser, IHTMLDocument2, IHTMLElement. Выполнить IHTMLElement.scrollIntoView и получится скроллинг в IE )
Очень прошу помочь мне решить эту задачку или подсказать другие пути решения, буду очень благодарен
карма: 1

0
файлы: 1code_18678.txt [522B] [125]
Ответов: 95
Рейтинг: 10
#2: 2010-06-04 17:19:38 ЛС | профиль | цитата
Очень прошу помочь, хотя бы подскажите верное направление...
карма: 1

0
Ответов: 93
Рейтинг: 1
#3: 2010-06-04 19:53:57 ЛС | профиль | цитата
Захватывай прокрутку страницы в формат avi. Просто сгрузи из сети готовую программу.
карма: 0

0
Ответов: 95
Рейтинг: 10
#4: 2010-06-04 19:57:41 ЛС | профиль | цитата
raph
Не представляю что из этого получится, как потом из него картинки то выдирать? Готовую не надо, мне нужно это для уже самостоятельной программы которая делает скрины окно, выделенной области и т.д. очень не хватает этой функции(
карма: 1

0
Ответов: 93
Рейтинг: 1
#5: 2010-06-04 20:04:48 ЛС | профиль | цитата
Посмотри ещё возможности HyperSnap. Он умеет скриншотить в картинки, настройки обещают захват с автопрокруткой.
карма: 0

0
Ответов: 95
Рейтинг: 10
#6: 2010-06-04 20:07:12 ЛС | профиль | цитата
raph
Есть такие программы, есть онлайн сервисы, вопрос то в том как это осуществить самому!
карма: 1

0
Ответов: 301
Рейтинг: 11
#7: 2010-06-04 20:08:53 ЛС | профиль | цитата
все что вам надо уже в snagit реализовано.
карма: 0

0
Ответов: 95
Рейтинг: 10
#8: 2010-06-04 20:10:48 ЛС | профиль | цитата
evgenyatam
Мне надо реализовать создание скриншота всей веб страницы в своей программе!
карма: 1

0
Ответов: 93
Рейтинг: 1
#9: 2010-06-04 20:12:44 ЛС | профиль | цитата
дизассемблируй подходящую жертву.
карма: 0

0
Ответов: 95
Рейтинг: 10
#10: 2010-06-04 20:21:34 ЛС | профиль | цитата
raph
По моему это не реально....

В программах это обычно реализовано так... выбираешь элемент и программа его автоматом прокручивает и скринит.... Подскажите пожалуйста как это можно осуществить! ( как прокручивать скроллинг сторонних приложений из моей проги и получать ответ о местонахождении полосы прокрутки?
карма: 1

0
Ответов: 970
Рейтинг: 270
#11: 2010-06-04 20:22:30 ЛС | профиль | цитата
местонахождении полосы прокрутки?

проверять цвет пикселя на полосе скроллбара
карма: 0

0
Ответов: 95
Рейтинг: 10
#12: 2010-06-04 20:26:36 ЛС | профиль | цитата
Genius
Я думал об этом... Но последняя страница(прокрутки) обычно идет не такого размера как другие и будет получаться что часть изображения при сборке будет повторяться

карма: 1

0
Ответов: 970
Рейтинг: 270
#13: 2010-06-04 20:28:21 ЛС | профиль | цитата
А разве нельзя просто взять какую-нибудь программу для создания панорам с возможностью запуска из командной строки и она в независимости от того повторяются ли фрагменты или нет склеит все это в один файл?
карма: 0

0
Ответов: 95
Рейтинг: 10
#14: 2010-06-04 20:31:05 ЛС | профиль | цитата
Genius
а есть такие? 0_о тогда это в корне меняет дело...
А ведь у всех разные ОС разные цветовые схемы и темы, схема "по цвету пикселя" не всегда будет работать...(
карма: 1

0
Ответов: 970
Рейтинг: 270
#15: 2010-06-04 20:36:23 ЛС | профиль | цитата
Тогда можно опознавать не по цвету, а по изменению цвета
карма: 0

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)