我正在使用jsPDF Autotable从HTML表格生成PDF。 TD元素包含使用变量填充单元格的ID。一切正常,但我想将textColor设置为红色表示负值。我找不到如何实现这个目标的例子?
编辑: 当使用钩子值为负时,我解决了使表格的底行变为红色...
drawCell: function (cell, data) {
if (summary_balance_weekly <0) {
if (data.row.index === data.table.rows.length - 1) {
doc.setTextColor(255,0,0);
}
}
}
答案 0 :(得分:2)
对于最新版本的jspdf-autotable,不推荐使用createdCell
函数,因此请使用didParseCell
函数。下面是在单元格中的数据为负数时更改颜色的示例
didParseCell: function (data) {
if(data.section === 'body' && data.cell.raw < 0){
data.cell.styles.textColor = "red";
}
}
答案 1 :(得分:1)
fillColor和textColor都接受RGB数组。因此,示例代码将如下所示:
createdCell: function(cell, opts) {
if (opts.column.index >= 1) { // count startrs from 0
// cell.raw contains the cell data
cell.styles.fillColor = [216,78,75]; // random color
cell.styles.textColor = [58,121,152];
}
}
答案 2 :(得分:-1)
您必须使用'createdCell'功能并在单元格中应用样式:
请参阅我的类似示例:
createdCell: function(cell, opts) {
if (opts.column.index == 1) {
cell.styles.textColor = "#20a8d8";
cell.styles.fillColor = "#000";
console.log(cell)
}
}