Heim  >  Artikel  >  Web-Frontend  >  Wie erstelle ich PDF-Dateien aus Binärzeichenfolgen in JavaScript in verschiedenen Browsern?

Wie erstelle ich PDF-Dateien aus Binärzeichenfolgen in JavaScript in verschiedenen Browsern?

Linda Hamilton
Linda HamiltonOriginal
2024-10-26 20:42:30933Durchsuche

How to Build PDF Files from Binary Strings in JavaScript Across Different Browsers?

Erstellen von PDF-Dateien aus Binärzeichenfolgen in JavaScript

Einführung

Erstellen einer PDF-Datei aus einer Binärzeichenfolge, die von a empfangen wurde Ein Webdienst kann in vielen Webanwendungen eine nützliche Aufgabe sein. Allerdings kann die Verwendung von data:uri zum Einbetten der Binärdaten in Browsern wie IE9 und Firefox zu Problemen führen. In diesem Artikel werden Lösungen untersucht, die in verschiedenen Browsern funktionieren.

Lösung: Dateisystemerstellung

Wie im Originalposter erwähnt, besteht eine Lösung darin, eine PDF-Datei auf der Datei zu erstellen System und fordert den Benutzer auf, es herunterzuladen. Dieser Ansatz stellt die Kompatibilität mit verschiedenen Browsern sicher.

Implementierung

Um diese Lösung zu implementieren, können Sie die folgenden Schritte verwenden:

  1. Konfigurieren Sie Ihre XMLHttpRequest zur Verwendung von „responseType = „blob“.
  2. Verarbeiten Sie das Ladeereignis von XMLHttpRequest, um die Antwort als Blob-Objekt abzurufen.
  3. Erstellen Sie eine Objekt-URL aus dem Blob-Objekt, um die PDF-Datei darzustellen.
  4. Erstellen Sie ein Ankerelement () und setzen Sie dessen href-Attribut auf die Objekt-URL und das Download-Attribut auf den gewünschten Dateinamen.
  5. Fügen Sie das Ankerelement an den Dokumentkörper an und klicken Sie darauf Fordern Sie den Benutzer auf, die Datei herunterzuladen.
  6. Entfernen Sie das Ankerelement, nachdem der Download abgeschlossen ist, um zu verhindern, dass unnötige Ressourcen beibehalten werden.

Hier ist ein Codebeispiel:

<code class="javascript">var request = new XMLHttpRequest();
request.open("GET", "/path/to/pdf", true);
request.responseType = "blob";
request.onload = function (e) {
  if (this.status === 200) {
    var file = window.URL.createObjectURL(this.response);
    var a = document.createElement("a");
    a.href = file;
    a.download = this.response.name || "detailPDF";
    document.body.appendChild(a);
    a.click();
    window.onfocus = function () {
      document.body.removeChild(a);
    };
  }
};
request.send();</code>

Fazit

Mit dieser Lösung können Sie PDF-Dateien aus Binärzeichenfolgen auf eine Weise erstellen, die in Browsern wie IE, FF, Opera, Chrome und Safari funktioniert und mehr bietet zuverlässige Methode zur Handhabung von PDF-Downloads.

Das obige ist der detaillierte Inhalt vonWie erstelle ich PDF-Dateien aus Binärzeichenfolgen in JavaScript in verschiedenen Browsern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn