Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Membina Fail PDF daripada Rentetan Binari dalam JavaScript Merentasi Pelayar Berbeza?

Bagaimana untuk Membina Fail PDF daripada Rentetan Binari dalam JavaScript Merentasi Pelayar Berbeza?

Linda Hamilton
Linda Hamiltonasal
2024-10-26 20:42:30931semak imbas

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

Membina Fail PDF daripada Rentetan Binari dalam JavaScript

Pengenalan

Membuat fail PDF daripada rentetan binari yang diterima daripada perkhidmatan web boleh menjadi tugas yang berguna dalam banyak aplikasi web. Walau bagaimanapun, menggunakan data:uri untuk membenamkan data binari dalam penyemak imbas seperti IE9 dan Firefox boleh membawa kepada isu. Artikel ini meneroka penyelesaian yang berfungsi merentas penyemak imbas yang berbeza.

Penyelesaian: Penciptaan Sistem Fail

Seperti yang dinyatakan oleh poster asal, satu penyelesaian melibatkan mencipta fail PDF pada fail sistem dan menggesa pengguna untuk memuat turunnya. Pendekatan ini memastikan keserasian dengan pelbagai penyemak imbas.

Pelaksanaan

Untuk melaksanakan penyelesaian ini, anda boleh menggunakan langkah berikut:

  1. Konfigurasikan anda XMLHttpRequest untuk menggunakan responseType = "gumpalan".
  2. Kendalikan acara pemuatan XMLHttpRequest untuk mendapatkan semula respons sebagai objek Blob.
  3. Buat URL objek daripada objek Blob untuk mewakili fail PDF.
  4. Buat elemen penambat () dan tetapkan atribut hrefnya kepada objectURL dan muat turun atribut kepada nama fail yang dikehendaki.
  5. Tambahkan elemen penambat pada badan dokumen dan klik padanya gesa pengguna untuk memuat turun fail.
  6. Alih keluar elemen penambat selepas muat turun selesai untuk mengelakkan sumber yang tidak diperlukan dikekalkan.

Berikut ialah contoh kod:

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

Kesimpulan

Penyelesaian ini membolehkan anda membina fail PDF daripada rentetan binari dengan cara yang berfungsi merentas penyemak imbas seperti IE, FF, Opera, Chrome dan Safari, memberikan lebih banyak kaedah yang boleh dipercayai untuk mengendalikan muat turun PDF.

Atas ialah kandungan terperinci Bagaimana untuk Membina Fail PDF daripada Rentetan Binari dalam JavaScript Merentasi Pelayar Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn