JSFiddle - React, Tailwind, and code Playground
HTML
<script src="https://cdn.rawgit.com/MrRio/jsPDF/fb507833/dist/jspdf.debug.js"></script>
<script src="https://cdn.rawgit.com/simonbengtsson/jsPDF-AutoTable/5f6f8c4a/dist/jspdf.plugin.autotable.js"></script>
<table id="basictable">
<thead style="font-size: 6px;">
<tr style="font-weight: bold; background-color: #C0CFE5;">
<th>Name</th>
<th>ISIN</th>
<th>Symbol</th>
<th>Quantity</th>
<th>CCY</th>
<th>Amount</th>
<th>Quote</th>
<th>Weight</th>
<th>Alpha</th>
<th>Beta</th>
<th>Vola</th>
</tr>
</thead>
<tbody style="font-size: 6px;">
<tr>
<td>name 1</td>
<td>isin 1</td>
<td>zz</td>
<td>1'286.0</td>
<td>EUR</td>
<td>197'851</td>
<td>153.85</td>
<td>19.79</td>
<td>0.51</td>
<td>0.67</td>
<td>0.26</td>
</tr>
<tr>
<td>xx</td>
<td>yy</td>
<td>zz</td>
<td>2'171.0</td>
<td>EUR</td>
<td>197'952</td>
<td>91.18</td>
<td>19.80</td>
<td>0.37</td>
<td>0.92</td>
<td>0.20</td>
</tr>
<tr>
<td>xxN</td>
<td>yy</td>
<td>zz</td>
<td>6'210.0</td>
<td>EUR</td>
<td>197'975</td>
<td>31.88</td>
<td>19.80</td>
<td>0.28</td>
<td>0.96</td>
<td>0.20</td>
</tr>
<tr>
<td>xx</td>
<td>yy</td>
<td>zz</td>
<td>2'171.0</td>
<td>EUR</td>
<td>197'952</td>
<td>91.18</td>
<td>19.80</td>
<td>0.21</td>
<td>0.79</td>
<td>0.20</td>
</tr>
<tr>
<td>xx</td>
<td>yy</td>
<td>zz</td>
<td>8'131.0</td>
<td>EUR</td>
<td>197'990</td>
<td>24.35</td>
<td>19.80</td>
<td>0.43</td>
<td>1.42</td>
<td>0.35</td>
</tr>
<tr>
<td>yy</td>
<td>xx</td>
<td>CASH</td>
<td>10'280.7</td>
<td>EUR</td>
<td>10'281</td>
<td>1.00</td>
<td>1.03</td>
<td>0.00</td>
<td>0.00</td>
<td>0.00</td>
</tr>
</tbody>
</table>
<br><br><br>
<button id="createPDF">
create PDF
</button>
CSS
#basictable{
margin: 50px 0 0 200px;
transform: scale(2);
}
JavaScript
$('#createPDF').click(function(){
var pdf = new jsPDF('portrait', 'pt', 'a4');
addTable(pdf, 40, $("#basictable")[0]);
pdf.save();
});
function addTable(doc, y, elem){
console.log('add 1');
doc.setFontSize(6);
var res = doc.autoTableHtmlToJson(elem);
doc.autoTable( res.columns, res.data, {
startY: y,
margin: {
right: 20,
left: 20
},
//tableLineColor: [189, 195, 199],
tableLineWidth: 0,
headerStyles: {
fontSize: 7,
fontStyle: 'normal',
textColor: [0, 0, 0],
fillColor: [192, 207, 229]
},
bodyStyles: {
fontSize: 6
},
drawCell: function (cell, data) {
// Rowspan
var col = data.column.index;
if(col==3 || col==5 || col==6 || col==7 || col==8 || col==9 || col==10){
cell.styles.halign = 'right';
//cell.styles.align = 'right';
console.log('2 data.column.index', data.column.index);
console.log('cell', cell);
console.log('data', data);
//console.log('x y', cell.textPos.x, cell.textPos.y);
//cell.textPos.x = cell.textPos.x + (data.column.width / 2);
//console.log('x y 2', cell.textPos.x, cell.textPos.y);
}
}
}
);
}