Название: Скриншот большой веб страницы Отправлено: Alex Custov от Февраль 02, 2017, 12:32 Привет. Есть проблема: загружена в QWebView большая веб-страница. Нужно сделать скриншот. Сразу оговорюсь, что методы типа QWebFrame::render() не сработают, потому что страница очень большая. Её contentsSize() в пикселях == 1024x125000 (может быть и больше). Создать такой QImage просто нельзя. Было бы хорошо, если было бы можно рендерить её кусками, но опять же в QWebFrame нет такого API.
Какие есть мысли как её отрендерить ? Название: Re: Скриншот большой веб страницы Отправлено: gil9red от Февраль 02, 2017, 12:51 Есть дикий вариант:
1. скриншотить текущую видимую область 2. вертикальный ползунок сдвигать на n-пикселей вниз 3. шаг 1 результат будет, но чтобы картинка была правильной придется по геммороиться :) Название: Re: Скриншот большой веб страницы Отправлено: Alex Custov от Февраль 02, 2017, 13:00 Хм, кажется я понял как этого достичь: придётся рендерить отдельные куски с помощью QWebFrame::render(), там есть аргумент clip. Думаю придётся рендерить несколькими частями и складывать в отдельные файлы. Ну хоть так.
Вариант со скроллом тоже рассматривал, но как самый последний и грязный :) |