您好,我正在尝试用英语和阿拉伯语打印PDF,但没有成功。它不会以阿拉伯语打印。任何指针都很棒。在这个应用程序中,我有两种选择,一种是下载英文PDF,另一种是下载阿拉伯文。我的代码如下:
这里是英文印刷:
$('#downloadPdf').click(function(event) {
var canvas1 = document.querySelector('#myChart');
var canvas2 = document.querySelector('#averageChart');
//creates image
var canvasImg1 = canvas1.toDataURL("image/png", 1.0);
var canvasImg2 = canvas2.toDataURL("image/png", 1.0);
var cname = <?php echo json_encode($cname); ?>;
// create new pdf and add our new canvas as an image
var pdf = new jsPDF('p', 'pt', 'a4');
pdf.autoTable({html: '#chart-head',startY: 39});
pdf.addImage(canvasImg1, 'PNG', 10, 70, 320, 160 );
pdf.addImage(canvasImg2, 'PNG', 260, 70, 340, 160 );
pdf.autoTable({html: '#charttable',startY: 310});
pdf.autoTable({html: '#pdftable',startY: 380});
// PAGE NUMBERING
// Add Page number at bottom-right
// Get the number of pages
const pageCount = pdf.internal.getNumberOfPages();
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1;
var yyyy = today.getFullYear();
today = mm+'-'+dd+'-'+yyyy;
// For each page, print the page number and the total pages
for(var i = 1; i <= pageCount; i++) {
// Go to page i
pdf.setPage(i);
pdf.setFontSize(8);
//Print Page 1 of 4 for example
pdf.text('Page ' + String(i) + ' of ' + String(pageCount),560,810,null,null,"right");
}
// For header
for(var i = 1; i <= pageCount; i++) {
// Go to page i
pdf.setPage(i);
pdf.setFontSize(14);
pdf.text('Course Report: ' + cname ,290,20,null,null,"center");
pdf.setFontSize(8);
pdf.text(today,290,30,null,null,"center");
}
// download the pdf
pdf.save('Course_Report.pdf');
});
阿拉伯语代码:
$('#downloadPdfarabic').click(function(event) {
var doc = new jsPDF();
doc.addFileToVFS('Amiri-Regular.ttf','AAEAAAASAQAABAAgR........';
doc.addFont('Amiri-Regular.ttf', 'custom', 'normal');
doc.setFont('custom');
doc.text(15, 15, 'متوسط درجة التقييم');
});