我有一小段文字代表pdf文件中某些内容的状态。我希望“失败”文本为红色并在其旁边带有红色圆圈,同时让“通过”文本为带有绿色圆圈的绿色文本。在chrome和firefox中,此方法工作得很好,但在IE中却显示为黑色(适用于版本11,但可能也出现在下面的所有内容中)。
这是相关代码:
if(status === Status.FAIL){
pdf.setTextColor("#ff0000")
pdf.setFillColor("#ff0000")
}
else if(status === Status.PASS){
pdf.setTextColor("#00ff00")
pdf.setFillColor("#00ff00")
}
else if(status === Status.WARNING){
pdf.setTextColor("#FFD700")
pdf.setFillColor("#FFD700")
}
pdf.text(status, 747, offset);
pdf.circle(740, offset - 3.5, 5, "F")
答案 0 :(得分:0)
设置颜色时,请尝试使用RGB而不是十六进制代码。我进行了一个演示来设置jsPDF对象的颜色,并且在IE和Chrome中效果很好:
<script src="https://cdn.bootcss.com/html2canvas/0.5.0-beta4/html2canvas.js"></<>script>
<script src="https://cdn.bootcss.com/jspdf/1.3.4/jspdf.debug.js"></<>script>
<script>
function init() {
var doc = new jsPDF();
doc.setFillColor(255, 0, 0);
doc.circle(20, 20, 2, 'F');
doc.setTextColor(255, 0, 0);
doc.text(24, 21.5, 'Fail');
doc.setFillColor(0, 255, 0);
doc.circle(20, 30, 2, 'F');
doc.setTextColor(0, 255, 0);
doc.text(24, 31.5, 'Pass');
doc.setFillColor(255, 215, 0);
doc.circle(20, 40, 2, 'F');
doc.setTextColor(255, 215, 0);
doc.text(24, 41.5, 'Warning');
doc.save('Test.pdf');
}
</script>
</head>
<body onload="init()">
</body>