Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.04.2016, 08:11
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

Скрин прикрепить к письму html2canvas
Добрые форумчане, может поможете разобраться в проблеме)
На странице есть скрипт, который делает скрин. Выглядит так:
<script language='javascript'>
        function downimg(){
            html2canvas($('#downimg'), {
                onrendered: function (canvas) {
                    var img = canvas.toDataURL('image/jpeg').replace('image/jpeg', 'image/octet-stream');
                    canvas.toBlob(function(blob) {
                    saveAs(blob ,"laminar.jpeg");
                    }, "image/jpeg");

                }
            });
        }
</script>


И есть кнопка "сохранить":
<button type="button" id="save" class="3d-button" onClick="downimg()">Сохранить</button>

При клике картинка сохраняется на компьютер. А сейчас есть задача,сформированную картинку прикреплять к письму (там есть еще одна кнопка "отправить"). Можете подсказать как?
Ответить с цитированием
  #2 (permalink)  
Старый 04.04.2016, 13:58
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от Heny
А сейчас есть задача,сформированную картинку прикреплять к письму
Этим занимается сервер.
Ответить с цитированием
  #3 (permalink)  
Старый 04.04.2016, 16:22
Профессор
Отправить личное сообщение для Яростный Меч Посмотреть профиль Найти все сообщения от Яростный Меч
 
Регистрация: 12.04.2010
Сообщений: 557

Сообщение от Heny
А сейчас есть задача,сформированную картинку прикреплять к письму (там есть еще одна кнопка "отправить"). Можете подсказать как?
вместо saveAs отправлять блоб на сервер.
Ответить с цитированием
  #4 (permalink)  
Старый 04.04.2016, 16:26
Профессор
Отправить личное сообщение для Яростный Меч Посмотреть профиль Найти все сообщения от Яростный Меч
 
Регистрация: 12.04.2010
Сообщений: 557

вообще, непонятно, зачем в коде используется и toDataURL, и toBlob.
надо что-то одно. И если это будет toBlob, то нужен полифил, не во всех браузерах оное реализовано.
Ответить с цитированием
  #5 (permalink)  
Старый 07.04.2016, 08:24
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

мне все равно непонятно как надо написать((( я начинающий товарисч
Ответить с цитированием
  #6 (permalink)  
Старый 07.04.2016, 10:40
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

а как отправлять на сервер? типа такого: xhr.send(downimg); ?
Ответить с цитированием
  #7 (permalink)  
Старый 07.04.2016, 11:38
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

сделала так:
<script language='javascript'>
function saveimg(){  

 var xhr = new XMLHttpRequest();
  xhr.open('POST', '', true);
  xhr.onload = function(e) { /*...*/ };
  
      html2canvas($('#saveimg'), {
      onrendered: function (canvas) {
      canvas.toBlob(function(blob) {
      xhr.send(blob ,"laminar.jpeg");
      }, "image/jpg");
      }
      });
      }
</script>

понимаю, что хрень наверное, ну и не работает она естественно

Последний раз редактировалось Heny, 07.04.2016 в 11:53.
Ответить с цитированием
  #8 (permalink)  
Старый 11.04.2016, 11:08
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

никто не подскажет?
Ответить с цитированием
  #9 (permalink)  
Старый 11.04.2016, 12:20
Профессор
Отправить личное сообщение для Маэстро Посмотреть профиль Найти все сообщения от Маэстро
 
Регистрация: 02.07.2010
Сообщений: 642

Сообщение от Heny Посмотреть сообщение
...там есть еще одна кнопка "отправить"...
А что сейчас происходит по этой кнопке?
Полуавтоматизированный вариант (при условии, что у посетителя на компьютере есть почтовая программа):
<a href="mailto:admin@javascript.ru?subject=screenshot&body=Вложите файл скриншота laminar.jpeg в письмо">ОТПРАВИТЬ письмо</a>
Ответить с цитированием
  #10 (permalink)  
Старый 12.04.2016, 07:42
Аспирант
Отправить личное сообщение для Heny Посмотреть профиль Найти все сообщения от Heny
 
Регистрация: 27.01.2016
Сообщений: 35

через эту кнопку открывается форма с полями, после заполнения которой идет кнопка "отправить для рассчета" - отправка сформированного письма с помощью системы управления сайтом netcat функцией CMIMEMail, туда добавляются указанные пользователем в форме поля, а я еще хотела прикрепить эту сформированную картинку, знаний не хватает катострофически
Можно тут посмотреть, чтоб понятнее было www.laminar.ru/test

Последний раз редактировалось Heny, 12.04.2016 в 13:02.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
leaflet, canvg, html2canvas обрезка канваса в png Trippal Общие вопросы Javascript 0 16.02.2016 12:00
html2canvas и сторонние изображения Instincted jQuery 6 30.04.2014 06:26