Maison  >  Article  >  interface Web  >  Comment créer des fichiers PDF à partir de chaînes binaires en JavaScript sur différents navigateurs ?

Comment créer des fichiers PDF à partir de chaînes binaires en JavaScript sur différents navigateurs ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-26 20:42:30933parcourir

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

Création de fichiers PDF à partir de chaînes binaires en JavaScript

Introduction

Création d'un fichier PDF à partir d'une chaîne binaire reçue d'un le service Web peut être une tâche utile dans de nombreuses applications Web. Cependant, utiliser data:uri pour intégrer les données binaires dans des navigateurs tels que IE9 et Firefox peut entraîner des problèmes. Cet article explore des solutions qui fonctionnent sur différents navigateurs.

Solution : création d'un système de fichiers

Comme mentionné par l'affiche originale, une solution consiste à créer un fichier PDF sur le fichier. système et invitant l'utilisateur à le télécharger. Cette approche garantit la compatibilité avec différents navigateurs.

Mise en œuvre

Pour mettre en œuvre cette solution, vous pouvez utiliser les étapes suivantes :

  1. Configurer votre XMLHttpRequest pour utiliser ResponseType = "blob".
  2. Gérez l'événement de chargement de XMLHttpRequest pour récupérer la réponse en tant qu'objet Blob.
  3. Créez une URL d'objet à partir de l'objet Blob pour représenter le fichier PDF.
  4. Créez un élément d'ancrage () et définissez son attribut href sur objectURL et son attribut de téléchargement sur le nom de fichier souhaité.
  5. Ajoutez l'élément d'ancrage au corps du document et cliquez dessus pour inviter l'utilisateur à télécharger le fichier.
  6. Supprimez l'élément d'ancrage une fois le téléchargement terminé pour éviter que des ressources inutiles ne soient conservées.

Voici un exemple de code :

<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>

Conclusion

Cette solution vous permet de créer des fichiers PDF à partir de chaînes binaires d'une manière qui fonctionne sur les navigateurs comme IE, FF, Opera, Chrome et Safari, offrant ainsi une méthode fiable pour gérer les téléchargements de PDF.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn