Отправка сформированного на JS PDF-файла на почту клиенту.
Всем привет.
Есть страница, на которой размещен калькулятор. Я формирую при помощи pdfmake https://github.com/bpampuch/pdfmake pdf файл, который можно скачать или распечатать. При этом в форме есть галочка, отправить расчеты мне на почту. Соответсвенно если она отмечена, то этот файл должен уходить на почту клиенту. В мануале есть открыть, печатать, скачать... pdfMake.createPdf(docInfo).download('name.pdf'); pdfMake.createPdf(docInfo).open('name.pdf'); pdfMake.createPdf(docInfo).print('name.pdf'); Как этот файл во вложение засунуть? |
Цитата:
|
Цитата:
Но файл в любом случае куда-то отправляется. Если есть галочка, то и клиенту и администратору. Если галочки нет, то только администратору. Я не понимаю как этот файл "выцепить". Форму в которую подгружается файл, и который нужно отправить по почте я понимаю. Делал. А как этот сформированный где-то файл запихнуть в письмо я не понимаю... |
Цитата:
Как примечание: чем большие возможностей предоставляется, тем больше приключений на свою задницу ищет разработчик :) Почему именно PDF, это калькулятор с плюшками в виде картинок, дизайн которого определяется исключительно пользователем? А проще, обычной html-таблицей результат расчета представить невозможно? PDF, это же не брелок, который можно прицепить к связке ключей и носить с собой. |
Цитата:
|
Цитата:
Нет там такого... Посмотрел, там много всего по выводу контента и настройкам самого файла. С этим всем я разобрался. А про то что этот файл можно отправить - ни слова. И в интернете я не нашел как его отправить... |
Цитата:
А вы о чем? |
Цитата:
такая js - https://github.com/bpampuch/pdfmake |
Ну и какие проблемы? Знаний хватит на простейшее - отправить текстом base64 (если файл не велик) и все необходимое сделать на сервере? Метод то в примере даже описан.
|
Я в документации ничего не нашел про это...
ТАм кроме стилей и 3-х функций ничего и нет... Я сделал по инструкции. Файл формируется. Выводится на печать. // Вывод на печать файла var docInfo = { info: { title:'Тестовый документ PDF', author:'Viktor', subject:'Theme', keywords:'Ключевые слова' }, pageSize:'A4', pageOrientation:'portrait',//'portrait' pageMargins:[50,50,50,50], header:[ { text: 'Общая сумма ремонта = ' + full_summ, alignment:'center',//left right } ], footer:function(currentPage,pageCount) { return { text: currentPage.toString() + 'из' + pageCount, alignment:'right', margin:[0,30,10,50] } }, content: [ { text:'Расчет стоимости ремонта квартиры', margin:[0,30,0,30], style:'header' //pageBreak:'after' }, { text:'Параметры квартиры', margin:[0,0,0,15], style:'headertwo' //pageBreak:'before' }, { text: 'Количество комнат - ' + print_rooms, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'Площадь квартиры = ' + square + 'кв.м.', margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'Количество санузлов = ' + sanuzel, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text:'Капитальные работы', margin:[0,0,0,15], style:'headertwo' //pageBreak:'before' }, { text: 'Мокрая стяжка пола - ' + print_styajka, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'Возведение межкомнатных стен - ' + print_walls, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'Демонтаж - ' + print_demontaj, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'Разводка электрики - ' + print_electrik, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, { text: 'В моем доме деревянные перекрытия - ' + print_woods, margin:[20,0,0,10], style:'maintext' //pageBreak:'before' }, ], styles: { header: { fontSize:20, bold:true, alignment:'center' }, headertwo: { fontSize:16, bold:true, alignment:'left' }, maintext: { fontSize:14, bold:false, alignment:'left' } } } pdfMake.createPdf(docInfo).print('name.pdf'); |
Часовой пояс GMT +3, время: 10:50. |