From af88fca255e507b4f512bf400bcbe2dc414e2698 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 14 Dec 2025 16:40:42 +0800 Subject: [PATCH 1/7] =?UTF-8?q?refactor:=20=E5=A2=9E=E5=8A=A0=20download?= =?UTF-8?q?=20=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PdfReader.razor.js | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js index c7b05bb6..1b599789 100644 --- a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js +++ b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js @@ -528,12 +528,19 @@ const addToolbarEventHandlers = (el, pdfViewer, invoke, options) => { }); EventHandler.on(toolbar, "click", ".bb-view-download", e => { if (options.url) { + let fileName = "download.pdf"; const docTitle = el.querySelector('.bb-view-subject'); - const anchorElement = document.createElement('a'); - anchorElement.href = options.url; - anchorElement.download = docTitle.textContent; - anchorElement.click(); - anchorElement.remove(); + if (docTitle) { + fileName = docTitle.textContent; + } + downloadPdf(options.url, fileName); + } + else if (options.data) { + const blob = new Blob([options.data], { type: 'application/pdf' }); + const url = window.URL.createObjectURL(blob); + let fileName = "download.pdf"; + downloadPdf(url, fileName); + window.URL.revokeObjectURL(url); } }); @@ -563,6 +570,15 @@ const addToolbarEventHandlers = (el, pdfViewer, invoke, options) => { }); } +const downloadPdf = (url, filename) => { + const anchorElement = document.createElement('a'); + anchorElement.href = url; + anchorElement.download = filename; + document.body.appendChild(anchorElement); + anchorElement.click(); + anchorElement.remove(); +} + const removeToolbarEventHandlers = el => { if (el) { const towPagesOneView = el.querySelector(".dropdown-item-pages"); From 07141f391b5a898f3b97b92e89099d3d02766f9a Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Sun, 14 Dec 2025 16:41:15 +0800 Subject: [PATCH 2/7] chore: bump version 10.0.18 --- .../BootstrapBlazor.PdfReader/BootstrapBlazor.PdfReader.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/BootstrapBlazor.PdfReader/BootstrapBlazor.PdfReader.csproj b/src/components/BootstrapBlazor.PdfReader/BootstrapBlazor.PdfReader.csproj index f0a05cb0..d5534cef 100644 --- a/src/components/BootstrapBlazor.PdfReader/BootstrapBlazor.PdfReader.csproj +++ b/src/components/BootstrapBlazor.PdfReader/BootstrapBlazor.PdfReader.csproj @@ -1,7 +1,7 @@  - 10.0.17 + 10.0.18 From 4ebbd9262fba6f0738f9b8969182501c4c6ccd79 Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Wed, 17 Dec 2025 17:57:39 +0800 Subject: [PATCH 3/7] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/BootstrapBlazor.PdfReader/PdfReader.razor.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.cs b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.cs index d9323302..b3b87f4b 100644 --- a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.cs +++ b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.cs @@ -242,11 +242,11 @@ protected override async Task OnAfterRenderAsync(bool firstRender) stream = await OnGetStreamAsync(); } - await SetPdfStream(stream); + await InvokeSetDataAsync(stream); } } - private async Task SetPdfStream(Stream? stream) + private async Task InvokeSetDataAsync(Stream? stream) { if (stream == null || stream == Stream.Null) { From df862f59b9878355ae15d359374f036064564d4c Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Wed, 17 Dec 2025 18:45:05 +0800 Subject: [PATCH 4/7] =?UTF-8?q?refactor:=20=E7=B2=BE=E7=AE=80=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js index 1b599789..529a067d 100644 --- a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js +++ b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js @@ -50,7 +50,7 @@ export async function setData(id, data) { const { options } = pdf; options.url = null; - options.data = data;; + options.data = data; await loadPdf(pdf); } From f755e577e4d9607011493aaf150bfa535845224f Mon Sep 17 00:00:00 2001 From: Argo Zhang Date: Wed, 17 Dec 2025 18:49:32 +0800 Subject: [PATCH 5/7] =?UTF-8?q?refactor:=20=E8=B0=83=E6=95=B4=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F=E5=90=8D=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/BootstrapBlazor.PdfReader/PdfReader.razor | 4 ++-- src/components/BootstrapBlazor.PdfReader/PdfReader.razor.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor index 58a81f25..ea1b0d89 100644 --- a/src/components/BootstrapBlazor.PdfReader/PdfReader.razor +++ b/src/components/BootstrapBlazor.PdfReader/PdfReader.razor @@ -111,7 +111,7 @@
@Localizer["DocumentFileSize"]
-
+
@@ -168,7 +168,7 @@
@Localizer["DocumentFastWebView"]
-
No
+
No