Erstellen Sie eine Excel-Datei mit einigen Stilen mit clientseitigem JavaScript (wenn möglich mit der js-xlsx-Bibliothek)

8

Ich möchte eine Excel-Datei (im .xlsx -Format) erstellen und sie mit Client Side JavaScript zum Herunterladen bereitstellen. Ich konnte mithilfe der js-xlsx -Bibliothek eine Beispieldatei erstellen. Aber ich kann keine Stile darauf anwenden. Zumindest einige grundlegende Stile einschließlich Hintergrundfarbe zu Header, fette Schriftart für Header und Textumbruch für die Zellen ist erforderlich.

js-xlsx Bibliotheksdokumentation sagt, dass wir Stile mit Cell Object angeben können .

Ich habe versucht, Stile mit dem Zellobjekt zu geben, aber es spiegelt sich nicht in der heruntergeladenen .xlsx-Datei wider. Ich habe sogar versucht, eine .xlsx-Datei zu lesen und dieselbe Datei mit der Funktion XLSX.write () zurückzuschreiben. Aber es gibt eine Excel-Datei ohne Stile zurück. Im Idealfall erwarte ich, dass die heruntergeladene Datei die gleichen Stile der hochgeladenen Datei aufweist. In der neu erstellten Datei wurden keine Schriftfarben oder Hintergrundfarben angewendet. Ich verwende Excel 2013 zum Testen der heruntergeladenen Dateien.

Unten finden Sie die Excel-Screenshots vor und nach dem Hochladen.

Originaldatei

Heruntergeladene Datei

Der Code ist unten angegeben.

%Vor%

Beispielcode wurde hier genommen.

Was ich erwarte, ist entweder eine Option, um Zellen mit der js-xlsx -Bibliothek oder einer anderen Bibliothek, die diese Funktionalität bietet, Stile zu geben. Ich habe eine Bibliothek namens exceljs gefunden, die jedoch node js erfordert um es zu unterstützen. Ich suche eine rein clientseitige Lösung. Dies soll für eine Cordova basierte Tablet- und Desktop-Anwendung verwendet werden.

    
Nithin Baby 08.11.2016, 12:22
quelle

1 Antwort

10

Nach einigen Recherchen konnte ich die Lösung für meine eigene Frage finden. Ich habe eine neue Bibliothek mit dem Namen xlsx-style für die Angabe von Stilen gefunden. xlsx-style basiert auf js-xlsx , um der generierten Excel-Datei auch Stile zu geben. Die Stile können den Zellen mithilfe eines neuen Attributs innerhalb des Zellobjekts übergeben werden.

Die Erklärung ist auf der Seite xlsx-style verfügbar.

Das Styling wird mithilfe eines Stilobjekts zugewiesen, das jeder Zelle zugeordnet ist. Schriftart, Farbe, Ausrichtung usw. können mit diesem Stilobjekt angegeben werden.

Ich habe ein minimalistisches Demo auf einer github-Seite hinzugefügt. Der Beispielcode ist in diesem github-Repository verfügbar.

Sie können den Screenshot der generierten Excel-Seite unten finden.

    
Nithin Baby 12.01.2017, 09:05
quelle

Tags und Links