Skip to content

Commit 3a3b8cc

Browse files
authored
feat(OfficeViewer): add OfficeViewer component (#6287)
* wip: 临时提交 * doc: 增加示例文件 * doc: 增加菜单 * doc: 增加 Office 文档预览组件资源文件 * doc: 增加源码映射 * doc: 更新示例文件减小文件体积 * doc: 更正预览文档链接 * doc: 依赖更改为包 * chore: bump version 9.7.4 * chore: 更改组件名称
1 parent 547980d commit 3a3b8cc

File tree

18 files changed

+70
-8
lines changed

18 files changed

+70
-8
lines changed

src/BootstrapBlazor.Server/BootstrapBlazor.Server.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
<PackageReference Include="BootstrapBlazor.MindMap" Version="9.1.6" />
5757
<PackageReference Include="BootstrapBlazor.MouseFollower" Version="9.0.1" />
5858
<PackageReference Include="BootstrapBlazor.OctIcon" Version="9.0.4" />
59+
<PackageReference Include="BootstrapBlazor.OfficeViewer" Version="9.0.0" />
5960
<PackageReference Include="BootstrapBlazor.OnScreenKeyboard" Version="9.0.1" />
6061
<PackageReference Include="BootstrapBlazor.PdfReader" Version="9.0.1" />
6162
<PackageReference Include="BootstrapBlazor.PdfViewer" Version="9.0.3" />

src/BootstrapBlazor.Server/Components/Samples/FileViewers.razor.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,6 @@ protected override void OnInitialized()
2525
ExcelSampleFile = CombineFilename("sample.xlsx");
2626

2727
FileList.Add("sample.xlsx");
28-
FileList.Add("sample2.xlsx");
29-
FileList.Add("sample3.xlsx");
30-
FileList.Add("sample2.docx");
3128
FileList.Add("sample.docx");
3229
Url = FileList[0];
3330

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
@page "/office-viewer"
2+
@inject IStringLocalizer<OfficeViewers> Localizer
3+
4+
<h3>@Localizer["OfficeViewerTitle"]</h3>
5+
6+
<h4>@Localizer["OfficeViewerDescription"]</h4>
7+
8+
<PackageTips Name="BootstrapBlazor.OfficeDocumentViewer" />
9+
10+
<DemoBlock Title="@Localizer["OfficeViewerNormalTitle"]" Introduction="@Localizer["OfficeViewerNormalIntro"]" Name="Normal">
11+
<section ignore>
12+
<Select @bind-Value="@_doc" Items="_docs"></Select>
13+
</section>
14+
<OfficeViewer Url="@_doc" Height="620px" OnLoaded="OnLoaded"></OfficeViewer>
15+
</DemoBlock>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
// Licensed to the .NET Foundation under one or more agreements.
2+
// The .NET Foundation licenses this file to you under the Apache 2.0 License
3+
// See the LICENSE file in the project root for more information.
4+
// Maintainer: Argo Zhang([email protected]) Website: https://www.blazor.zone
5+
6+
namespace BootstrapBlazor.Server.Components.Samples;
7+
8+
/// <summary>
9+
/// PdfViewers
10+
/// </summary>
11+
public partial class OfficeViewers
12+
{
13+
[Inject, NotNull]
14+
private ToastService? ToastService { get; set; }
15+
16+
private readonly List<SelectedItem> _docs =
17+
[
18+
new SelectedItem("https://www.blazor.zone/samples/sample.docx", "sample.docx"),
19+
new SelectedItem("https://www.blazor.zone/samples/sample.xlsx", "sample.xlsx"),
20+
new SelectedItem("https://www.blazor.zone/samples/sample.pptx", "sample.pptx"),
21+
];
22+
23+
private string _doc = "https://www.blazor.zone/samples/sample.docx";
24+
25+
private Task OnLoaded() => ToastService.Success("Office Documentation Viewer", Localizer["OfficeViewerToastSuccessfulContent"]);
26+
}

src/BootstrapBlazor.Server/Components/Samples/PdfViewers.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
</div>
1919
</div>
2020
</section>
21-
<PdfViewer Url="./samples/pdf-viewer.pdf" Height="620px"
21+
<PdfViewer Url="./samples/sample.pdf" Height="620px"
2222
NotSupportCallback="NotSupportCallback" OnLoaded="OnLoaded"
2323
UseGoogleDocs="@_useGoogleDocs"></PdfViewer>
2424
</DemoBlock>

src/BootstrapBlazor.Server/Extensions/MenusLocalizerExtensions.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -707,6 +707,12 @@ void AddData(DemoMenuItem item)
707707
Url = "mermaid"
708708
},
709709
new()
710+
{
711+
IsNew = true,
712+
Text = Localizer["OfficeViewer"],
713+
Url = "office-viewer"
714+
},
715+
new()
710716
{
711717
Text = Localizer["PdfReader"],
712718
Url = "pdf-reader"

src/BootstrapBlazor.Server/Locales/en-US.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4952,7 +4952,8 @@
49524952
"CardUpload": "CardUpload",
49534953
"DropUpload": "DropUpload",
49544954
"Vditor": "Vditor Markdown",
4955-
"TcpSocketFactory": "ITcpSocketFactory"
4955+
"TcpSocketFactory": "ITcpSocketFactory",
4956+
"OfficeViewer": "Office Viewer"
49564957
},
49574958
"BootstrapBlazor.Server.Components.Samples.Table.TablesHeader": {
49584959
"TablesHeaderTitle": "Header grouping function",
@@ -7200,5 +7201,12 @@
72007201
"VditorSubTitle": "Vditor is a browser-based Markdown editor that supports WYSIWYG, instant rendering (similar to Typora), and split-screen preview mode.",
72017202
"BaseUsageTitle": "Basic usage",
72027203
"BaseUsageIntro": "Set the content displayed by the component by setting the <code>Value</code> value, and set the component configuration information by setting the <code>Options</code> parameter"
7204+
},
7205+
"BootstrapBlazor.Server.Components.Samples.OfficeViewers": {
7206+
"OfficeViewerTitle": "Office Document Viewer",
7207+
"OfficeViewerDescription": "This component previews Office documents using Microsoft's online document preview feature",
7208+
"OfficeViewerNormalTitle": "Basic Usage",
7209+
"OfficeViewerNormalIntro": "Set the document URL for preview by configuring the <code>Url</code> value",
7210+
"OfficeViewerToastSuccessfulContent": "Office document loaded successfully"
72037211
}
72047212
}

src/BootstrapBlazor.Server/Locales/zh-CN.json

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4952,7 +4952,8 @@
49524952
"CardUpload": "卡片上传组件 CardUpload",
49534953
"DropUpload": "拖动上传组件 DropUpload",
49544954
"Vditor": "富文本框 Vditor Markdown",
4955-
"TcpSocketFactory": "套接字服务 ITcpSocketFactory"
4955+
"TcpSocketFactory": "套接字服务 ITcpSocketFactory",
4956+
"OfficeViewer": "Office 文档预览组件"
49564957
},
49574958
"BootstrapBlazor.Server.Components.Samples.Table.TablesHeader": {
49584959
"TablesHeaderTitle": "表头分组功能",
@@ -7200,5 +7201,12 @@
72007201
"VditorSubTitle": "Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式",
72017202
"BaseUsageTitle": "基本用法",
72027203
"BaseUsageIntro": "通过设置 <code>Value</code> 值设置组件显示的内容,通过 <code>Options</code> 参数设置组件配置信息"
7204+
},
7205+
"BootstrapBlazor.Server.Components.Samples.OfficeViewers": {
7206+
"OfficeViewerTitle": "Office 文档预览器",
7207+
"OfficeViewerDescription": "本组件通过使用微软在线文档预览功能预览 Office 文档内容",
7208+
"OfficeViewerNormalTitle": "基本用法",
7209+
"OfficeViewerNormalIntro": "通过设置 <code>Url</code> 值设置预览文档地址",
7210+
"OfficeViewerToastSuccessfulContent": "Office 文档加载成功"
72037211
}
72047212
}

src/BootstrapBlazor.Server/docs.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,8 @@
241241
"fullscreen-button": "FullScreenButtons",
242242
"meet": "Meets",
243243
"vditor": "Vditors",
244-
"socket-factory": "SocketFactories"
244+
"socket-factory": "SocketFactories",
245+
"office-viewer": "OfficeViewers"
245246
},
246247
"video": {
247248
"table": "BV1ap4y1x7Qn?p=1",
-992 KB
Binary file not shown.

0 commit comments

Comments
 (0)