2017-01-30 5 views
1

Мой пример (просто нажмите кнопку "Экспорт PDF"): https://jsfiddle.net/j9vaqpnz/7/jsPDF AutoTable выравнивается по правому краю х положение ошибка

Мой пример экспортирует свою таблицу, которая выглядит следующим образом:

enter image description here .

Таблица затем экспортируется в pdf с использованием библиотек jspdf и autotable.

В функции экспорта я использую функцию «drawCell» и для всех столбцов, которые содержат ряд я правый выравнивать их следующим образом:

drawCell: function (cell, data) { 
       var col = data.column.index; 
       if(col==3 || col==5 || col==6 || col==7 || col==8 || col==9 || col==10){ 
        cell.styles.halign = 'right'; 
       } 
      } 

.

Проблема: В PDF все столбцы, которые я выровнен по правому краю расположены inproperly, это выглядит следующим образом:

enter image description here

Является ли это ошибка? Или, может быть, я использую «drawCell» inproperly?

+0

Попробуйте использовать createdCell вместо drawCell. –

+0

Takk Simon. Я опубликовал обновленный - рабочий пример ниже для завершения, если кто-то еще ищет это. – DavidDunham

ответ

1

С помощью «createdCell» и «createdHeaderCell» правый выравнивает позиции элементов должным образом.

Обновлен пример: https://jsfiddle.net/j9vaqpnz/10/

Новый код:

... 
createdHeaderCell: function (cell, data) { 
    alignCol(cell, data); 
}, 
createdCell: function (cell, data) { 
    alignCol(cell, data); 
} 
... 

function alignCol(cell, data){ 
    var col = data.column.index; 
    if(col==3 || col==5 || col==6 || col==7 || col==8 || col==9 || col==10){ 
     cell.styles.halign = 'right'; 
    } 
} 
Смежные вопросы