当前位置: 首页 > news >正文

vue 预览pdf 【@sunsetglow/vue-pdf-viewer】开箱即用,无需开发

@sunsetglow/vue-pdf-viewer

开箱即用的pdf插件@sunsetglow/vue-pdf-viewer, vue3 版本 无需多余开发,操作简单,支持大文件 pdf 滚动加载,缩放,左侧导航,下载,页码,打印,文本复制,等功能

在这里插入图片描述

移动端展示

在这里插入图片描述

举个栗子

  • 首先就是我们先去安装我们的npm 包
yarn add @sunsetglow/vue-pdf-viewer
npm i @sunsetglow/vue-pdf-viewer
pnpm i @sunsetglow/vue-pdf-viewer
  • 话不多说直接上代码
 <template><div id="pdf-container"></div>
</template>
<script lang="ts" setup>
import { initPdfView } from "@sunsetglow/vue-pdf-viewer";
import "@sunsetglow/vue-pdf-viewer/dist/style.css";
import { onMounted } from "vue";
const loading = ref(false);
const pdfPath = new URL("@sunsetglow/vue-pdf-viewer/dist/libs/pdf.worker.min.mjs",import.meta.url
).href;
onMounted(() => {loading.value = true;initPdfView(document.querySelector("#pdf-container") as HTMLElement, {loadFileUrl: `https:xxx.pdf`, //文件路径pdfPath: pdfPath, // pdf.js 里需要指定的文件路径loading: (load: boolean) => {loading.value = load;//加载完成会返回 false},pdfOption: {scale: true, //缩放pdfImageView: true, //pdf 是否可以单片点击预览page: true, //分页查看navShow: true, //左侧导航navigationShow: false, // 左侧导航是否开启pdfViewResize: true, // 是否开启resize 函数 确保pdf 根据可视窗口缩放大小toolShow: true, // 是否开启顶部导航download: true, //下载clearScale: 1.5, // 清晰度 默认1.5 感觉不清晰调大 ,当然清晰度越高pdf生成性能有影响fileName: "preview.pdf", // pdf 下载文件名称lang: "en", //字典语言print: true, //打印功能customPdfOption: {// customPdfOption是 pdfjs getDocument 函数中一些配置参数 具体可参考 https://mozilla.github.io/pdf.js/api/draft/module-pdfjsLib.html#~DocumentInitParameterscMapPacked: true, //指定 CMap 是否是二进制打包的cMapUrl: "https://cdn.jsdelivr.net/npm/pdfjs-dist@2.2.228/cmaps/", //预定义 Adob​​e CMaps 所在的 URL。可解决字体加载错误},textLayer: true, //文本是否可复制 , 文本复制和点击查看大图冲突建议把 pdfImageView 改为false},});
});
</script><style scoped>
#pdf-container {width: 100%;padding: 0px;height: 100%;
}
</style>
  • 最简单ctrl+c ctrl+v

  • 但是我们需要注意的是pdfPath这个参数 pdfPath 需要一个指向 pdf.worker.min.mjs 文件的路径

  • 做完以上步骤我们大功告成了

  • 参数说明

参数名称内容 说明
loadFileUrl文件地址(必选)
pdfPathpdf.js 里所需的 pdf.worker.min.mjs 指向地址(必选)
pdfOptionpdf 的配置选项 (可选)
loadingpdf 加载完成执行函数 (可选)
  • 如果该插件对你有帮助希望可以去 github 去帮忙点个Star
http://www.lryc.cn/news/491640.html

相关文章:

  • Java NIO 核心知识总结
  • 疑难Tips:NextCloud域名访问登录时卡住,显示违反内容安全策略
  • C 语言学习-06【指针】
  • 如何快速将Excel数据导入到SQL Server数据库
  • 【人工智能】Python在机器学习与人工智能中的应用
  • 使用八爪鱼爬虫抓取汽车网站数据,分析舆情数据
  • 什么是事务?事务有哪些特性?
  • 玩转合宙Luat教程 基础篇④——程序基础(库、线程、定时器和订阅/发布)
  • 24.<Spring博客系统①(数据库+公共代码+持久层+显示博客列表+博客详情)>
  • webp 网页如何录屏?
  • 丹摩征文活动|实现Llama3.1大模型的本地部署
  • Spring Boot 2 和 Spring Boot 3 中使用 Spring Security 的区别
  • 【数据结构与算法】 LeetCode:回溯
  • SpringBoot线程池的使用
  • Neural Magic 发布 LLM Compressor:提升大模型推理效率的新工具
  • HttpServletRequest req和前端的关系,req.getParameter详细解释,req.getParameter和前端的关系
  • React-useEffect的使用
  • MySQL数据库与Informix:能否创建同名表?
  • 爬虫实战:采集知乎XXX话题数据
  • 大数据新视界 -- Hive 数据桶原理:均匀分布数据的智慧(上)(9/ 30)
  • 【小白学机器学习33】 大数定律python的 pandas.Dataframe 和 pandas.Series基础内容
  • 【shodan】(五)网段利用
  • LeetCode739. 每日温度(2024冬季每日一题 15)
  • Node.js的http模块:创建HTTP服务器、客户端示例
  • 加菲工具 - 好用免费的在线工具集合
  • .NET9 - 新功能体验(二)
  • map和redis关系
  • 《数据结构》学习系列——图(中)
  • 探索Python的HTTP之旅:揭秘Requests库的神秘面纱
  • Python 爬虫从入门到(不)入狱学习笔记