2017-02-24 2 views
0

Ich habe eine Seite in eckigen js erstellt, die das ng-repeat-Tag verwendet, um die Daten in einer Tabelle aufzufüllen. Ich habe etwas Formatierung und Colspan verwendet. Ich versuche, die Tabelle in pdf zu exportieren. Ich habe die folgenden Ansätze versucht:Exportieren von Tabelle mit Colspan und Formatierung in eckigen js

  1. htmltoCanvas: verwendet, um den folgenden Code:

    $scope.export = function(){ 
        html2canvas(document.getElementById('exportthis'), { 
        onrendered: function (canvas) { 
         var data = canvas.toDataURL(); 
         var pdf = new jsPDF('landscape','pt','letter');  
         pdf.addImage(data, 'JPEG', 0, 0); 
         pdf.save("download.pdf"); 
        } 
        }); 
    } 
    

Die Frage, die ich bin vor ist: da es die Tabelle in ein Bild umwandelt, kann ich nicht Kopieren Sie den Inhalt und auch wenn die Tabelle zu groß ist (mehr als eine Seite) gibt es eine leere PDF.

  1. Ich verwendete jspdf, das colspan nicht unterstützt und auch die Formatierung ist verloren.

Bitte beraten.

+0

aus irgendeinem Grund bin ich nicht in der Lage zu Code, Entschuldigung dafür ... –

+0

Nicht bewusst, eine gute clientseitige Lösung dafür. wkhtmltopdf arbeitet serverseitig mit webkit um ein pdf zu rendern, das kann man auch ganz einfach mit phantomjs selbst machen, aber clientseitig die einzigen PDF Generatoren, die ich gesehen habe, benötigen ein bestimmtes Datenmodell zum Erzeugen der Seiten. Möglicherweise können Sie Dinge so skalieren, dass sie mit der Methode übereinstimmen, die Sie gerade ausprobieren, aber es wäre wahrscheinlich besser, etwas zu bekommen, das es direkter rendern kann. – shaunhusain

Antwort

0

Ich habe ein Problem gefunden, um mein Problem zu lösen. Veröffentlichen Sie es als eine Antwort, da es jemandem mit dem gleichen Problem helfen könnte. Ich benutze jetzt eine Druckoption und damit kann ich das Div mit der Formatierung speichern.

Verwandte Themen