Answers for "datatable pdf rtl ,Right Align Column Rows Of Data Table On PDF Export"

0

datatable pdf rtl ,Right Align Column Rows Of Data Table On PDF Export

use like this:
table = $('#mydatatable').DataTable({
                language: language,
                "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "all"]],
                dom: 'Blfrtip',
                buttons: buttonForDatatable([2, 3, 4], [0, 0, 0, 0]),
                processing: true,
                serverSide: true,
                )}
                
function buttonForDatatable(columns, margins, prtrait = "portrait",title='',message='') {
            return [
                 {
            extend: 'copy',
            text:"کپی",
            exportOptions: {

                columns: columns.reverse(),

            },

        },  {
            extend: 'csv',
            text:"سی اس وی",
            exportOptions: {

                columns: columns.reverse(),

            },

        },  {
            extend: 'print',
            text:"پرینت",
            exportOptions: {

                columns: columns.reverse(),

            },

        }, {
            extend: 'excel',
            text:"اکسل",
            exportOptions: {

                columns: columns,

            },

        }  ,{
                    extend: 'pdfHtml5',
                    orientation: prtrait,
                    footer: true,
                    alignment: "center",
                    title: title,
                    messageTop:message,
                    text: "PDF",
                    exportOptions: {
                        alignment: "center",
                        orthogonal: "PDF",
                        columns: columns,
                        modifier: {order: 'index', page: 'current'}

                    },
                    customize: function (doc) {
                        doc.styles.message.alignment = "right";
                        doc.styles.tableBodyEven.alignment = "center";
                        doc.styles.tableBodyOdd.alignment = "center";
                        doc.styles.tableFooter.alignment = "center";
                        doc.styles.tableHeader.alignment = "center";
                        doc.content[0]['text'] = doc.content[0]['text'].split(' ').reverse().join(' ');
                        doc.content[1].margin = margins;
                        doc.content[2].margin = margins;
                        for (var i = 0; i < doc.content[2].table.body.length; i++) {
                            // console.log(doc.content[1].table.body[i].length);
                            for (var j = 0; j < doc.content[2].table.body[i].length; j++) {
                                doc.content[2].table.body[i][j]['text'] = doc.content[2].table.body[i][j]['text'].split(' ').reverse().join(' ');
                            }
                        }
                    }
                }
            ];
        }
Posted by: Guest on April-14-2022

Browse Popular Code Answers by Language