2014-02-19 7 views
1

Я создал простую веб-страницу (html) с несколькими скриптами Java, что-то вроде викторины. Пользователи заполняют текстовые поля и нажимают кнопки для ответов и когда они нажимают кнопку «Отправить», после чего JavaScrript вычисляет счет и представляет его.Экспорт html с javascript в pdf

Итак, моя страница - index.html, и когда пользователь нажимает кнопку отправки, она все еще находится на этой странице, но она показывает результаты, что-то вроде: WELL DONE! Имя, идентификатор, адрес электронной почты и т. Д. (Получить из текстовых полей) Ваша оценка: 144 (это будет рассчитано JS).

Итак, теперь я хочу добавить кнопку ниже этого результата, что скажет, например, «PDF». И когда пользователь нажмет на него, он откроет в новой вкладке документ pdf с результатами на index.html после вычисления. И файл pdf должен быть сформирован как страница index.html.

Я пытался выяснить, как это сделать, и я не мог найти решение. Проблема в том, что я хочу, чтобы эта страница открывалась локально, а не на сервере. Можете ли вы предложить мне, как это сделать, возможно, использовать PHP (но он не будет работать локально). Я просто хочу скопировать файл html paste и JavaScripts на любой компьютер, и вам также нужно работать там локально. Просто откройте в браузере и завершите викторину, а затем экспортируйте результаты в формате pdf.

Thanx

ответ

1

Вы можете делать то, что вы хотите в JavaScript, использовать эту библиотеку: http://parall.ax/products/jspdf

Вы должны формат вывода с форматом желания для вашего PDF

+0

Спасибо. Поддерживает ли эта библиотека jspdf поддержку CSS. Я имею в виду, могу ли я форматировать выход так, как мне нравится? И поддерживает ли эта библиотека UTF-8? Я попытался, но, похоже, проблема с этим не поддерживает некоторые буквы :( – mpavlovic89

+0

Я думаю, что он не поддерживает CSS, но в самой библиотеке есть некоторые опции для изменения цветов шрифта и т. Д. Он должен работать с UTF8 потому что на главной странице библиотеки (где есть пример изображения), если вы измените код (он находится рядом с окном pdf) и введите символы UTF-8 в названии, хорошо работает, поэтому я предполагаю, что он должен работать с UTF -8.Я не пробовал все письма, поэтому, возможно, есть некоторые ограничения. Существует параметр для установки enconding: http: //mrrio.github.io/jsPDF/doc/symbols/FontObject.html – arfarinha

1

Вот простой PDF пример с jsPDF:

var doc = new jsPDF(); 
 
doc.text(20, 20, 'Hello world!'); 
 
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.'); 
 
doc.text(20, 40, 'Do you like that?'); 
 
doc.output('save', 'filename.pdf');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.2/jspdf.debug.js"></script> 
 

 
<iframe id="pdf" type="application/pdf" src="" width="800" height="400"></iframe>

Смежные вопросы