I'm generating pdf via pdfmake.
Let's say i have content of the pdf like this
var docDefinition = {
content: [
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam a pharetra odio.',
'Vestibulum erat mauris, sodales et consequat sit amet, ultricies vitae erat. Etiam feugiat orci justo, ultrices malesuada dui ornare ac.',
]
};
Is it possible to add border arround one of the paragraphs or do I have to use tables for this?
I have not gotten apply borders to a paragraph. I think the only option you have is to use tables.
Below this lines I have attached a simple code that you can paste directly at pdfmake playground in order to try it.
var dd = {
content: [
{
style: 'tableExample',
color: '#555',
table: {
body: [
[
{
text : 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam a pharetra odio.\n\nVestibulum erat mauris, sodales et consequat sit amet, ultricies vitae erat. Etiam feugiat orci justo, ultrices malesuada dui ornare ac.'
}
],
[
{
text : 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam a pharetra odio.\n\nVestibulum erat mauris, sodales et consequat sit amet, ultricies vitae erat. Etiam feugiat orci justo, ultrices malesuada dui ornare ac.'
}
],
[
{
text : 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam a pharetra odio.\n\nVestibulum erat mauris, sodales et consequat sit amet, ultricies vitae erat. Etiam feugiat orci justo, ultrices malesuada dui ornare ac.'
}
],
]
},
layout: {
//hLineWidth: function(i, node) {
// return (i === 0 || i === node.table.body.length) ? 2 : 1;
//},
//vLineWidth: function(i, node) {
// return (i === 0 || i === node.table.widths.length) ? 2 : 1;
//},
hLineColor: function(i, node) {
return (i === 0 || i === node.table.body.length) ? 'red' : 'blue';
},
vLineColor: function(i, node) {
return (i === 0 || i === node.table.widths.length) ? 'red' : 'blue';
},
paddingLeft: function(i, node) { return 40; },
paddingRight: function(i, node) { return 40; },
paddingTop: function(i, node) { return 20; },
paddingBottom: function(i, node) { return 20; }
}
}
],
defaultStyle: {
alignment: 'justify'
}
}