在将数据导出到带有阿拉伯字符的pdf时遇到一些麻烦 ,编码不正确
我尝试使用jsPDF插件来jsPDF-AutoTable,并且尝试了pdfMake,但是问题仍然存在
此外,我正在使用ASP.Net Boilerplate v3.2.4作为后端,Angularjs v1.7.5
我想将ui-grid数据导出为PDF
在这里查看我的angularjs代码:
vm.exportPdf = function () {
var columns = [];
var rows = [];
// copy ui-grid's titles to pdf's table definition:
var allColumnDefs = vm.gridOptions.columnDefs;
for (var columnIdx in allColumnDefs) {
var columnDef = allColumnDefs[columnIdx];
if (columnDef.name !== 'actions') {
var newColumnDef = {
title: columnDef.displayName,
dataKey: columnDef.name
};
columns.push(newColumnDef);
}
}
// copy ui-grid's actual data to pdf's table:
var allRecords = vm.gridOptions.data;
for (var recordIdx in allRecords) {
var record = allRecords[recordIdx];
var newRow = {};
for (var columnIdx1 in allColumnDefs) {
var columnDef1 = allColumnDefs[columnIdx1];
var value = record[columnDef1.name];
if (value !== null) {
newRow[columnDef1.name] = value;
}
}
rows.push(newRow);
}
var docName = 'myFile.pdf';
var doc = new jsPDF('p', 'pt');
doc.autoTable(columns, rows, { styles: { fontSize: 8.5 } });
doc.save(docName);
};
输出阿拉伯字符如下:
þÿ41C) 'DG1E DD-H'D'
所以我在这里的问题是,是否有人遇到过这个问题,解决方案是什么?
或者还有其他要导出为PDF的库或插件,但支持UTF-8和阿拉伯字符。
谢谢。