Сохранить визуализированный HTML как изображение - PullRequest
2 голосов
/ 28 августа 2011

Я создаю веб-приложение, которое должно экспортировать div в изображение. Этот div будет содержать изображения, другие div, текст с CSS-стилем и т. Д. В конце у пользователя должно быть изображение, которое будет выглядеть так же, как если бы он сделал скриншот этого div. Я изучил PHP-библиотеки на стороне сервера, но не вижу ничего, что могло бы справиться со сложностью отображаемого HTML. У HTML5 canvas есть такая возможность, но я не могу использовать canvas для своего случая. Есть идеи?

Спасибо!

Ответы [ 3 ]

4 голосов
/ 28 сентября 2014

Оформить html2canvas .Javascript Framework, который отображает содержимое страницы в элементе canvas.

0 голосов
/ 13 ноября 2012

Я написал проект, который преобразует HTML со стилями CSS в canvas.

Он доступен здесь: https://github.com/coolbloke1324/html-to-canvas

А примерная тестовая страница доступна здесь: http://www.isogenicengine.com/html-canvas/test/index.html

На тестовой странице при начальной загрузке будет просто отображаться квадратный div с некоторыми другими элементами div внутри него с различными стилями, такими как фоны и границы, включая радиус границы и т. Д. В правом верхнем углу вы увидите кнопкустраница с пометкой «Визуализация».Нажмите на нее, и холст будет создан, а затем DOM будет проанализирован и представлен на холсте.Я намеренно изменил цвет фона холста на черный, чтобы вы могли увидеть разницу.

0 голосов
/ 28 августа 2011

Вы можете обернуть div в тег canvas, получить прямой доступ к данным пикселей, отправить их в скрипт PHP и использовать эти данные для построения изображения.

Вот как вы получаете данные пикселей https://developer.mozilla.org/en/html/canvas/pixel_manipulation_with_canvas

А вот что вы использовали бы для создания изображения пиксель за пикселем http://php.net/manual/en/function.imagesetpixel.php

...