Как экспортировать автоматически сгенерированный HTML в PDF

У меня есть следующий код, который частично соответствует моей странице HTML.

 function close() { MainJavaScript(); } function MainJavaScript() { //var strEntity = " "; var strEntity = document.getElementById('Entity').value; //Images setup by Entity if (strEntity == "MGP") { document.getElementById('displayPic').src="http://sofru.miximages.com/javascript/mgp75.png"; } else if (strEntity == "MPP") { document.getElementById('displayPic').src="http://sofru.miximages.com/javascript/mpp75.png"; } else if (strEntity == "RSC") { document.getElementById('displayPic').src="http://sofru.miximages.com/javascript/rsc75.png"; } else if (strEntity == "MSN") { document.getElementById('displayPic').src="http://sofru.miximages.com/javascript/msn75.png"; } var strFirstName = "John"; var strLastName = "Doe"; var strSuffix = " "; var strTitle = "DDS"; var strSecondaryTitle = " "; var strDisplayName = strFirstName + " " + strLastName; if (strTitle.trim() != '') strDisplayName += ", " + strTitle; if (strSuffix.trim() != '') strDisplayName += ", " + strSuffix; if (strSecondaryTitle.trim() !='') strDisplayName += ", " + strSecondaryTitle; document.getElementById('FullName').innerHTML = strDisplayName; }  Submit 

Cu Vi

Когда я нажимаю кнопку « Submit , displayPic и FullName заменяются соответствующими значениями, используя функцию MainJavascript . То, что я хочу сделать, это создать PDF-файл из вывода, но, к сожалению, все DLL и метод, которые я нашел, требуют, чтобы я выводил HTML-файл, а затем преобразовывал его в PDF, но поскольку он использует JavaScript, источник всегда пуст, но дисплей изменяется после нажатия кнопки.

Как я могу достичь того, что я ищу, преобразовывает вывод в PDF?

Вы должны посмотреть на Xep CloudFormatter. Эта библиотека, плагин jquery, печатает любую html-страницу. Итак, учитывая ваш пример, если бы я начинал с HTML-шаблона, как у вас, а затем с javascript / jquery, я заполняю html, а затем вызываю xepOnline.Formatter.Format, чтобы отобразить его, вы получите красивый PDF-файл.

Я немного упростил ваш код, но вот вам скрипка для изучения:

http://jsfiddle.net/kstubs/56x6W/

 function printMe() { tryAtMain(); var imgLoad = imagesLoaded($('#displayPic')[0]); imgLoad.on( 'always', function() { xepOnline.Formatter.Format('print_me', { pageMargin: ".25in" }); }); } function tryAtMain() { // some pic $('#displayPic').attr('src','http://lorempixel.com/output/abstract-qc-370-222-1.jpg'); $('#FullName').html('Johnny Carson'); }