Blazor组件自做十二 : Blazor Pdf Reader PDF阅读器 组件

news2024/11/17 9:43:09
原文链接 [https://www.cnblogs.com/densen2014/p/16954812.html]

Blazor Pdf Reader PDF阅读器 组件 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IChv1OZ2-1670428567016)(https://img.shields.io/nuget/v/BootstrapBlazor.PdfReader.svg?style=flat-square)]

应小伙伴要求撸了一个简单的PDF阅读器组件

####示例:

https://blazor.app1.es/pdfReaders

Tips:

Blazor 部署 pdf.js 不能正确显示中文资源解决办法

####使用方法:

1.nuget包

BootstrapBlazor.PdfReader

2._Imports.razor 文件 或者页面添加 添加组件库引用

@using BootstrapBlazor.Components

3.razor页面

<PdfReader PdfFile="https://densen.es/test/webdev/pdf/sample.pdf" />
           
<PdfReader UrlBase="https://blazor.app1.es/"
           PdfFile="_content/DemoShared/sample.pdf" />

<PdfReader UrlBase="https://blazor.app1.es/"
           PdfFile="_content/DemoShared/sample.pdf" 
           EnableStreamingMode="true"/>

<pre>跨域最佳体验</pre>

<PdfReader UrlBase="https://blazor.app1.es/"
           PdfFile="_content/DemoShared/sample.pdf" 
           EnableStreamingMode="true"
           ForcePDFJS="true" />

4.参数说明

参数说明默认值
PdfStream用于渲染的文件流,为空则用URL参数读取文件
PdfFilePDF文件路径, https://xx.com/sample.pdfnull
Func<string, Task>? OnInfo信息回调
Func<string, Task>? OnError错误回调
EnableStreamingMode使用流化模式,可跨域读取文件false
UrlBasePDF文件基础路径, (使用流化模式才需要设置), https://xx.com
Height700
Page指定页码,如果浏览器支持,将加载PDF并自动滚动到第n页1
ForceIframe强制使用 Iframefalse
ForcePDFJS强制使用 PDF.jsfalse
PDFJS_URLPDF.js 浏览器页面路径内置
Search*查询字符串
View*视图模式FitV
Pagemode*页面模式thumbs

*表示PDF.js 专有

优先嵌入模式,不支持则回落倒pdf.js模式

跨域最佳体验: EnableStreamingMode=true , ForcePDFJS=true

项目源码

Github

知识共享许可协议

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名AlexChow(包含链接: https://github.com/densen2014 ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系 。

AlexChow

今日头条 | 博客园 | 知乎 | Gitee | GitHub

image


Blazor 组件

条码扫描 ZXingBlazor
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-82RJe3j0-1670428567030)(https://img.shields.io/nuget/v/ZXingBlazor.svg?style=flat-square)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-p92L01fx-1670428567031)(https://img.shields.io/nuget/dt/ZXingBlazor.svg?style=flat-square)]

图片浏览器 Viewer

条码扫描 BarcodeScanner

手写签名 Handwritten

手写签名 SignaturePad

定位/持续定位 Geolocation

屏幕键盘 OnScreenKeyboard

百度地图 BaiduMap

谷歌地图 GoogleMap

蓝牙和打印 Bluetooth

PDF阅读器 PdfReader

文件系统访问 FileSystem

光学字符识别 OCR

电池信息/网络信息 WebAPI

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/70654.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【YOLOX 论文+源码解读】YOLOX: Exceeding YOLO Series in 2021

目录前言一、整体网络架构二、改进点1.1、解耦头1.2、Anchor Free1.3、SimOTA三、源码解析3.1、Backbone3.2、Neck3.3、head3.4、预测&#xff1a;decode_outputs3.5、训练&#xff1a;get_losses3.5.1、准备工作&#xff1a;get_output_and_grid3.5.2、get_losses函数&#xf…

神操作!竟然有人用Python在Excel中画画,女神看了直呼震惊

十字绣大家都知道吧&#xff0c;今天咱们来玩个电子版的十字绣。 用 Python 读取图片的像素值&#xff0c;然后输出到 Excel 表格中&#xff0c;最终形成一幅像素画&#xff0c;也就是电子版的十字绣了。 准备 既然要读取图片&#xff0c;那就需要用到 Pillow 库&#xff0c…

做更真实的实验!艾美捷Caspase-1活性分析试剂盒方案

FLICA 是通过检测来评估细胞死亡的有力方法体外凋亡。免疫化学技术&#xff08;ICT&#xff09;FLICA 荧光标记的抑制剂与活性半胱天冬酶共价结合的CAspa酶1,2。FLICA测量细胞内的凋亡过程&#xff0c;而不是副作用&#xff0c;如磷脂酰丝氨酸的翻转&#xff0c;并消除假阳性的…

iOS视频编码实战VideoToolbox

需求 iOS中编码视频数据,一般情况而言一个项目仅需要一个编码器,不过有时特殊需求可能需要两个编码器同时工作.本例中实现了编码器类.仅通过指定不同编码器的枚举值就可以快速生成需要的编码器,且支持两个编码器一起工作. 实现原理: iOS中利用VideoToolBox框架完成视频硬编码…

TS201的Flag输出状态控制LED亮灭原理和例程(含参考代码)

目的&#xff1a; 理解FLAG可编程作为输入输出引脚&#xff0c;并且能够利用按键进行相应FLAG&#xff08;FLAG0,FLAG1&#xff09;标志的输入来相应的FLAG标志(FLAG2,FLAG3)输出来控制与之相连的LED。掌握外部中断和定时器中断的设置以及其响应过程&#xff0c;理解外部硬件可…

hevc帧内planer预测模式和角度预测模式

帧内planer预测模式 planer预测模式适用于纹理相对平缓的图像区域&#xff0c;对于各个编码宏块而言&#xff0c;它不但能保持图像宏块边界良好的连续性。而且可以利用平面梯度信号随像素值的变化趋势而变化&#xff0c;在Planer预测模式下&#xff0c;可以将预测像素Px,y 看作…

企业应收账款管理存在的问题及对策

应收账款也就是信用交易&#xff0c;企业应收账款的产生是企业采取信用销售方式的必然结果。 现如今信用交易已经成为企业提高竞争力、扩大销售的必要手段&#xff0c;它充分挖掘和利用了企业的现有生产能力&#xff0c;扩大了销售量&#xff0c;增加了产品的市场份额&#xf…

潮玩积木国产化浪潮里,“中国积木”的自证之路

随着Z世代的崛起&#xff0c;潮玩从小众兴趣领域进入大众视野。 其中&#xff0c;作为年轻人喜爱的潮流品类之一&#xff0c;拼搭积木正在成为潮玩赛道的新风口。 哪怕疫情影响下&#xff0c;作为非必需消费品的积木仍然保持着中高速市场增长&#xff0c;足以被视为消费领域的…

[附源码]计算机毕业设计路政管理信息系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

ChatGPT入门指南

ChatGPT入门指南什么是ChatGPT&#xff1f;为什么ChatGPT意义重大&#xff1f;如何使用ChatGPT什么是ChatGPT&#xff1f; ChatGPT是基于聊天的生成预训练transformer模型的缩写&#xff0c;是一个强大的工具&#xff0c;可以以各种方式使用&#xff0c;以提高您在许多领域的生…

【Python】基础语法 3 (函数)

函数详解1. 函数是什么2. 语法格式3. 函数参数4. 函数返回值5. 变量作用域6. 函数执行过程7. 链式调用8. 嵌套调用9. 函数递归10. 参数默认值11. 关键字参数1. 函数是什么 编程中的函数和数学中的函数有一定的相似之处。 数学上的函数&#xff0c;比如 y sinx&#xff0c;x 取…

如何创建微信小程序?【创建小程序】

如何创建微信小程序呢&#xff1f;这是很多没有小程序的小伙伴经常问的问题&#xff0c;现在小程序给我们带来很多便利&#xff0c;而且很多企业公司也会有自己的小程序提供给他们的客户使用。那么创建微信小程序的步骤是什么呢&#xff0c;下面跟大家说说如何创建微信小程序。…

centos 模拟路由器功能实现内网和外网的联通

如下图的网络结构 192.168.65.128是一个windows主机&#xff0c;仅链接vmnet1的网卡。属于内网&#xff0c;无法连接外网&#xff0c;路由如下&#xff1a; IPv4 路由表 活动路由: 网络目标 网络掩码 网关 接口 跃点数 127.0.0.0 255.…

飞剪、追剪算法详细图解(附PLC完整源代码)

谈到运动控制就离不开编码器,有关编码器测速,测距的相关内容,大家可以查看专栏的其它文章,和飞剪控制息息相关的编码器测速,请参看下面的博客,链接如下: 如何通过编码器信号计算输送线/输送带线速度(飞剪、追剪算法基础)_RXXW_Dor的博客-CSDN博客不同品牌PLC如何采集…

Acrel-2000Z电力监控系统在重庆五桂堂历史文化商业街区的应用-Susie 周

1、项目概述 据悉原五桂堂街是一条上百年的地地道道的涪陵“老街”&#xff0c;北起火神庙&#xff08;后来的铁器社&#xff09;西侧&#xff0c;南止天主堂大门前横街尽头&#xff0c;长约200米&#xff0c;宽约2米&#xff0c;该项目建设地点位于重庆市涪陵区敦仁街道望栏桥…

设备树(Device Tree)

设备树介绍&#xff1a; 设备树是一个描述设备硬件资源的文件&#xff0c;该文件是由节点组成的树形结构。如下&#xff1a; / { node1 { a-string-property "A string"; a-string-list-property "first string", "second string"; // hex is …

Linux磁盘管理

Linux磁盘管理实验目的及要求1.熟悉Linux下磁盘的基本管理方法。2.了解Linux磁盘配额管理的意义和基本方法。3.掌握mount、fdisk、df等常用的磁盘管理命令。实验原理实验步骤1.使用不同的方法挂载/卸载磁盘并查看相关信息&#xff0c;具体步骤如下&#xff1a;1.挂载一个光驱或…

简述人工神经网络的定义,简述神经网络算法

1、人工智能十大算法 人工智能十大算法如下 线性回归&#xff08;Linear Regression&#xff09;可能是最流行的机器学习算法。线性回归就是要找一条直线&#xff0c;并且让这条直线尽可能地拟合散点图中的数据点。它试图通过将直线方程与该数据拟合来表示自变量&#xff08;x…

mapbox一学就会系列:01 第一个地图页面

文章目录前言一、mapbox是什么&#xff1f;官网官网示例效果尝鲜二、使用步骤1.引入mapbox-gl.js库在线库npm 形式安装2.使用方法无账号则申请&#xff0c;有账号则登录申请完成后&#xff0c;获取token创建一个地图元素容器使用token并配置创建一个地图示例效果总结前言 最近…

PMP项目管理证书有用么?什么人可以考呢?

有用&#xff0c;非常有用&#xff0c;PMP如今的价值在于越来越多的招聘和公司都需要PMP证书&#xff0c;有需求就有价值。&#xff08;资料文末&#xff09; 需求分两个方面来说&#xff0c;一个是个人&#xff0c;一个是组织。 个人的用处&#xff1a; 项目管理几乎不限行业…