前端实现pdf文件预览的操作步骤方法_javascript技巧

PDF.js 是一个用 JavaScript 实现的 PDF 阅读器,可以嵌入到网页中进行 PDF 文件的预览,并且可以自定义其功能。

import React, { useEffect, useRef } from 'react';import pdfjsLib from 'pdfjs-dist';import 'pdfjs-dist/web/pdf_viewer';const PdfPreview = ({ url }) => { const pdfContainer = useRef(null); useEffect(() => { // 配置 PDF.js pdfjsLib.GlobalWorkerOptions.workerSrc = `//cdnjs.Cloudflare.com/ajax/libs/pdf.js/${pdfjsLib.version}/pdf.worker.js`; // 加载 PDF const loadingTask = pdfjsLib.getDocument(url); loadingTask.promise.then((pdf) => { // 获取第一页 pdf.getPage(1).then((page) => { const viewport = page.getViewport({ scale: 1.5 }); const canvas = document.createElement('canvas'); const context = canvas.getContext('2d'); canvas.height = viewport.height; canvas.width = viewport.width; const renderContext = { canvasContext: context, viewport: viewport }; page.render(renderContext).promise.then(() => { pdfContainer.current.appendChild(canvas); }); }); }); }, [url]); return ;};export default PdfPreview;

如果不想使用 PDF.js,也可以通过 iframe 嵌入 PDF 文件,并通过特定参数来禁用下载功能。

当检测到文件为 PDF 时,使用 iframe 进行嵌入,并添加 #toolbar=0 参数来禁用工具栏(包括下载按钮)。

if (record.name.endsWith('.pdf')) { const pdffileUrl= new URL(API_BASE_URL_PRO).origin; // window.open(pdfFileUrl, '_blank'); 或者使用打开新窗口方式 const fileUrl = `${baseUrl.replace(/:\d+$/, ':3100')}/api/common/file/download?fileId=${record.fileId}&bucketName=dataset#toolbar=0`; const previewModal = Modal.info({ title: ( <> 文件预览 {record.name} ), content: ( ), footer: null, width: '75%', style: { top: 35 }, closable: true, onCancel: () => previewModal.destroy(), }); return;}

选择适合你项目需求的方法进行实现即可。如果你希望有更高的定制性和更好的用户体验,推荐使用 PDF.js。如果你希望实现简单快捷,可以选择 iframe 方法。

到此这篇关于前端实现pdf文件预览操作步骤方法的文章就介绍到这了,更多相关前端pdf文件预览内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!


本文地址: https://www.earthnavs.com/jishuwz/c5ec1aed71e89e41e333.html
全局中部横幅
知道日报作者中心

:。知道日报是百度知道重磅推出的品牌内容栏目,泛生活领域的专业知识问答平台。基于百度知道强大的问答平台基础和良好的用户口碑,知道日报甄选广大网友深感兴趣的泛生活领域问题,涉及生活、科技、互联网、健康、环境、天文等几十个分类,邀请专业机构、专家学者,向读者提供专业优质的回答。

顶象

顶象防御云,致力于帮助企业构建自主可控的业务安全体系,通过智能无感验证码、端加固、设备指纹、实时决策、安全感知防御平台等产品解决业务欺诈威胁,防范化解各类网络黑灰产风险,让业务更加健康稳定,助力企业创新与增长。

有益网络

有益网络(www.150cn.com)是基于云计算的互联网产品提供商,专业提供域名注册、虚拟主机、云服务器、VPS主机、挂机宝、动态vps等产品和服务,配备超6星的客服技术服务团队。

QQ空间

QQ空间(Qzone)是拥有数亿用户的社交网络,是QQ用户的网上家园,是腾讯集团的核心平台之一。您可以玩游戏、玩装扮、上传照片、写说说、写日志,黄钻贵族还可以免费换装并拥有多种特权。QQ空间同时致力于建设腾讯开放平台,和第三方开发商、创业者一起为亿万中国网民提供卓越的、个性化的社交服务。

腾轩引导页

腾轩引导页,腾轩引导页,引导页,官网主页

识酷吧导航

识库吧导航(shikuba.cn)提供高效便捷的网站分类导航服务,涵盖学术、工具、设计、娱乐等领域的优质站点。每日人工审核更新,助您快速发现实用资源,提升工作效率与学习体验。免费、无广告、一键直达!

候鸟号

候鸟号致力于做一个正经的财经资讯平台,证券、期货、基金等栏目专业分析讲解,帮助您成为一个优秀的财经爱好者。

冒泡网

冒泡网创为您免费分享网络创业项目、网创经验、各大网创论坛VIP教程、创业交流、网创经验交流等,帮助大家获取最新创业项目信息!

超悦电脑

收藏特快网址是开放式网站分类目录导航,收录国内外、各行业优秀网站,旨在为用户提供网站分类目录检索、优秀网站参考、网站推广服务。

小刀资源网

爱网络,爱这里。网络人的烟火,熬不尽的网络江湖。专注活动,软件,教程分享!总之就是网络那些事。精品源码下载_专注资源收集分享_最新技术QQ资源收集平台_网络技术爱好者的栖息之地_让我们的技术更上一层楼。