Javascript 在带有pdfmake的段落周围添加边框

Javascript 在带有pdfmake的段落周围添加边框,javascript,pdf,pdfmake,Javascript,Pdf,Pdfmake,我正在通过生成pdf 假设我有这样的pdf内容 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 feugi

我正在通过生成pdf

假设我有这样的pdf内容

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.',
    ]
};

是否可以在其中一个段落周围添加边框,或者我必须使用表格进行此操作?

我没有将边框应用于段落。我认为你唯一的选择就是使用表格

在这几行下面,我附加了一个简单的代码,您可以直接粘贴在上面进行尝试

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'
    }

}

另一个选项是使用画布在文本位置绘制类似边框的线条:

{
    canvas: [
        { type: 'line', x1: 390, y1: -80, x2: 510, y2: -80, lineWidth: 1 }, //Up line
        { type: 'line', x1: 390, y1: -35, x2: 510, y2: -35, lineWidth: 1 }, //Bottom line
        { type: 'line', x1: 390, y1: -80, x2: 390, y2: -35, lineWidth: 1 }, //Left line
        { type: 'line', x1: 510, y1: -80, x2: 510, y2: -35, lineWidth: 1 }, //Rigth line
    ]
},
这将在PDF的右上方位置绘制一个squere。 优点是你可以使用一些系统,比如:线宽