#javascript #html #email #canvas #svg
Есть рассылка по пользователям раз в неделю с информацией. Только эта информация более наглядно будет смотреться в виде графика. Вопрос: как отображать графики в HTML письме? Iframe, JavaScript отпадает через неподражаемость в почтовых клиентах. Есть мысль рендерить картинку, рабочий пример с сайта https://woody.aviasales.ru/graph.png?last_prices=14328,18610&average_price=14950 Они рендерят картинку по GET параметрах. Как это сделать? Есть проще альтернативы?
Ответы
Ответ 1
Такие графики обычно рисуются на php с помощью библиотеки GD http://php.net/manual/ru/book.image.php . Мы обращаемся по указанному адресу к скрипту, однако он на выходе отдает не html-документ, а изображение, сгенерированое на лету исходя из get-параметров. Стандартный скрипт выглядит примерно так: header("Content-type: image/png"); //сообщаем браузеру, что посылается картинка $string = $_GET['text']; $im = imagecreatefrompng("images/button1.png");//создаем картинку $orange = imagecolorallocate($im, 220, 210, 60); //что-то рисуем $px = (imagesx($im) - 7.5 * strlen($string)) / 2; imagestring($im, 3, $px, 9, $string, $orange); imagepng($im);//выводим изображение в буфер вывода imagedestroy($im);//особождаем память Там есть самые простые методы - рисование линии, дуги, эллипсы, заливки и т.д. Вообщем пайнт. Однако есть библиотеки, надстройки на GD, например, pchart или jpgraph упрощающие работу с графиками, возможно вам следует их попробовать для вашей задачи.
Комментариев нет:
Отправить комментарий