Hallo Leute,
vorab - es geht nicht um Contao.
Ich habe ein JavaScript welches mir ein PDF erstellt. Dieses möchte ich dann mit dem OS-Eigenen Safe-Dialog speichern oder anzeigen lassen.
In allen Browsern - AUßER IE - funktioniert das auch sehr gut.
Leider wird im IE dieser Dialog nicht angezeigt.
Hier hatte ich mit PHP schon mal zum Thema angefangen; hatte mich dann aber für JS entschieden.
Ich benutze die JS-Lib: jsPdf
Screenshot FireFox(alles in Ordnung):
firefox.JPG
Hier bekommt der entsprechende Button seinen Trigger:
Code:
/**
* Reagiert auf den Button PDF erstellen und ruft die erwartete Funktion pdfErstellen() auf.
* @returns {undefined}
*/
$(function () {
$("#zert_btnPdfErstellen").on("click", pdfErstellen);
});
Diese Funktion erstellt das PDF:
Code:
/**
* Diese Funktion holt sich die vom Benutzer im Registrierungsformular eingegebenen, personenbezogenen Daten
* und schreibt diese in eine *.pdf Datei.
* Der Name der *.pdf Datei wird in der Variablen docName so zusammengesetzt, dass der Name und das Jahr der Durchführung im Dateinamen erscheinen.
* @returns {undefined}
*/
function pdfErstellen() {
//Benutzerdaten abholen - diese kommen aus der Datei schnittstelle_PHP_JS.php
let tmpDatenContainer = hohleBenutzerDaten();
//Dateiname zusammensetzen
let docName = 'Sicherheitsbelehrung' + new Date().getFullYear() + '_' + tmpDatenContainer['nachname'] + '.pdf';
//Neues jsPDF Dokument erstellen
let doc = new jsPDF();
// Bild zum Dokument hinzufügen. Das kommt aus der Datei mat-scripts-pdf-image.js.
doc.addImage(getImg(), 'JPEG', 0, 0, 210, 297);
//Texte und personenbezogene Daten hinzufügen
doc.setFontSize(16);
doc.text(35, 130, 'Name:');
doc.text(90, 130, tmpDatenContainer["nachname"]);
doc.text(35, 150, 'Vorname:');
doc.text(90, 150, tmpDatenContainer["vorname"]);
doc.setFontSize(16);
doc.text(40, 233, tmpDatenContainer["datum"]);
//Speicherdialog aufrufen
doc.save(docName);
}
Hat hier ggf. jemand eine Idee, wie ich dieses PDF im IE auch herunterladen/anzeigen lassen kann?
Über einen Tipp würde ich mich freuen.
Gruß
tschero
Lesezeichen