2017-11-16 8 views
0

jsPDFのオートタグに質問があります。表の前後にコンテンツを追加する(jsPDFのオートテーブル)

マイコード:

$('#printBtn').on('click', function() { 
    var pdf = new jsPDF('p', 'pt', 'a4'); 
    var res = pdf.autoTableHtmlToJson(document.getElementById("tablePrint")); 

    pdf.autoTable(res.columns, res.data, { 
     theme : 'plain', 
     styles: { 
      fontSize: 12 
     }, 
     showHeader: 'never', 
     createdCell: function(cell, data) { 
      var tdElement = cell.raw; 
      if (tdElement.classList.contains('hrow')) { 
       cell.styles.fontStyle = 'bold'; 
      } 
     } 
    }); 

    pdf.save("test.pdf"); 
}); 

私はDIVから表の前後にテキストを追加します。 私はjsPDF autotable例では、このコードスニペットを発見した:

var before = "text before"; 
    pdf.text(before, 14, 30); 

このコードは良い作品。私はpdf.autoTable(...});の前にそれを挿入しています。 しかし、14番と30番の番号は分かりません。

次に、pdf.autoTable関数呼び出しの後にコードを挿入し、pdfの最後のページにテキストが印刷されますが、最後ではなくページの上部に表示されます。

私の悪いenglischのために申し訳ありません。 ありがとうございます。

+0

jspdf autotableリポジトリのコンテンツの例を見たことがありますか? 14と30はテキストの位置です。他の値を試してください。違いがわかります。 –

+0

しかし、14は何のために、30は何のためにですか?幅と高さ? mm、ピクセル、cm?位置を指定せずにテーブルの下にコンテンツを挿入できませんか?その好奇心は、テーブルが完全な側面を使用したときに内容が新しい側面を作成しないため.... .... / –

答えて

0

ここで答えで私の刺しです:jsPDF AutotablesはjsPDFに基づいているので、あなたがhereを移動する必要があります

var pdf = new jsPDF('p', 'pt', 'a4'); 

PTがある
は、これはあなたのAutotableの関数呼び出しであります点と呼ばれる測定単位です。したがって、14と30は点です。第1の位置14では、要素を左右に動かす。 2番目の位置30は、要素を上下に移動させます。私は彼らがピクセル(px)のようなものだと推測しています。あなたはポイントを使ってテキストをあなたの望む場所に移動しなければならないようです。

関連する問題