jsPdf выводит undefined

Я использую jsPdf, чтобы сохранить свою веб-страницу в формате pdf.

Я использую структуру метеора, вот мой код

'click .button':function(e)
    {
       var doc = new jsPDF();
         var source = $('#stackoverflow').first();
         var specialElementHandlers = {

         };

         doc.fromHTML(
             source, // HTML string or DOM elem ref.
             0.5,    // x coord
             0.5,    // y coord
             {
                 'width': 7.5, // max width of content on PDF
                 'elementHandlers': specialElementHandlers
             });

         doc.output('dataurlnewwindow');  
         doc.save('test.pdf');
    },

Мой div stackoverflow

<div class="tab-pane" id="stackoverflow">
        <a href="" class="button">Run Code</a>
          <form class="navbar-form navbar-left" role="search">
            <div class="form-group">
                <input type="text"  id="stackurl" class="form-control" autocomplete="off" placeholder="Enter Your Stackoverflow ID">
            </div>
            <button type="submit" class="btn btn-default" id="getData">Get Data</button>
          </form>
          <br><br>
           <hr>
          {{> BasicDetails}}
           <hr>
          {{> UserQuestions}}
            <hr>
          {{> UserAnswers}}   
      </div>

Для doc.save('test.pdf') ошибка

saveas is not defined

Я добавил filesaver.js в свой проект, который загружается при загрузке dom, по-прежнему получая сообщение об ошибке Нужно ли мне добавлять какие-либо другие пакеты blob.js или downloadify.js

Для doc.output('dataurl')

В окне вывода я получаю только 'undefined

Я загрузил zip-файл с github и добавил в свой проект следующие файлы.

jspdf.js, jspdf.plugin.from_html.js, jspdf.plugin.split_text_to_size.js, jspdf.plugin.standard_font_metrics.js

что не так с моим кодом?

ОБНОВЛЕНИЕ: с решением slavo я не получаю ошибку saveAs, но мои данные все равно не отображаются в формате pdf, в файле pdf отображается undefined. Мой div содержит диаграммы. Это проблема?

Похоже, у jsPDF проблемы с chrts


person user1934044    schedule 25.05.2014    source источник
comment
попробуйте поместить эти файлы в папку «client/compatibility»: docs.meteor.com/#structuringyourapp   -  person imslavko    schedule 25.05.2014
comment
@imslavko, теперь я не получаю saveAs не определенный метод, но данные в stackoverflow все еще не отображаются, в pdf отображается undefined   -  person user1934044    schedule 25.05.2014
comment
вероятно, некоторые проблемы с порядком загрузки, прочитайте документы, как определяется порядок загрузки   -  person imslavko    schedule 25.05.2014
comment
попробуйте использовать ‹script type=text/javascript src=/lib/jsPDF/dist/jspdf.min.js›‹/script›, который использовался в их примере: github.com/MrRio/jsPDF/blob/master/index.html   -  person user1852788    schedule 26.05.2014


Ответы (1)


Я тоже запутался, пытаясь подключить это, так что вот что я нашел, пытаясь заставить jsPDF работать с Meteor. Вместо использования этих файлов:

jspdf.js, jspdf.plugin.from_html.js, jspdf.plugin.split_text_to_size.js, jspdf.plugin.standard_font_metrics.js

Найдите следующие два и поместите их в папку «client/compatibility», как предложил imslako:

jspdf.min.js jspdf.source.js

Не знаю, поможет ли это с вашей ошибкой в ​​диаграммах, но это прояснило для меня проблему saveAs.

person Itinerati    schedule 30.07.2014