下面的内容很好,但是由于包含阿拉伯语长文本的列,第一行变成了第二行,第二行变成了第一行:
$('#table').dataTable({
buttons: [
{
extend: 'pdfHtml5',
text: 'PDF',
exportOptions: {
columns: ':visible',
modifier: {order: 'index'},
format: {
body: function (data, row, column, node) {
const arabic = /[\u0600-\u06FF]/;
if (arabic.test(data)) {
return data.split(' ').reverse().join(' ');
}
return data;
},
header: function (data, row, column, node) {
const arabic = /[\u0600-\u06FF]/;
if (arabic.test(data)) {
return data.split(' ').reverse().join(' ');
}
return data;
}
}
}
}
],
})
这是文字图片:
自定义:函数(文档){
$(doc.document.body).find('table').css('direction', 'rtl');
$(doc.document.body).find('table').css('text-align','right'); },
此代码适用于 ltr 表到 rtl 的转换