我正在使用pdfmake创建pdf工作正常我使用样式将文本对齐到右边这也很好但是我想将表中的一个特定列对齐以对齐但是它不能如果我给出整个表而不是单列的对齐方式可以做任何人都能告诉我如何在表格中将特定列对齐。
var previousbillitems = invoice.Items.map(function (item) {
return [item.Date, item.Description, item.Amount];
});
{
style: 'itemsTable',
table: {
widths: [75, '*', 75],
body: [
[
{ text: $translate.instant('{{"billdate_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"description_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"amount_message" | translate}}'), style: 'itemsTableHeader' },
]
].concat(previousbillitems)
},
},
它的风格:
itemsTable: {
alignment: 'center',
margin: [0, 5, 0, 15]
},
预期输出如下:
答案 0 :(得分:1)
通过更改这样的代码,我得到了正确对齐数据的解决方案
var previousbillitems = invoice.Items.map(function (item) {
return [
{text: item.Date, alignment: 'center'},
{text: item.Description, alignment: 'center'},
{text: item.Amount, alignment: 'right'}
];
});
{
style: 'itemsTable',
table: {
widths: [75, '*', 75],
body: [
[
{ text: $translate.instant('{{"billdate_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"description_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"amount_message" | translate}}'), style: 'itemsTableHeader' },
]
].concat(previousbillitems)
},
},
答案 1 :(得分:0)
像这样对我有用
var previousbillitems = invoice.Items.map(function (item) {
return [
{text: item.Date, style: 'cellCenter'},
{text: item.Description, style: 'cellCenter'},
{text: item.Amount, style: 'cellRight'},
];
});
{
style: 'itemsTable',
table: {
widths: [75, '*', 75],
body: [
[
{ text: $translate.instant('{{"billdate_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"description_message" | translate}}'), style: 'itemsTableHeader' },
{ text: $translate.instant('{{"amount_message" | translate}}'), style: 'itemsTableHeader' },
]
].concat(previousbillitems)
},
},
样式
styles:{
cellLeft: {
// fontSize: 13,
// fillColor : 'gray',
alignment : 'left'
},
cellCenter: {
//fontSize: 13,
// fillColor : 'gray',
alignment : 'center'
},
cellRight: {
// fontSize: 13,
// fillColor : 'gray',
alignment : 'right'
}
}