iframe 在线预览pdf、word、excel、ppt、txt、图片、视频

简介: iframe 在线预览pdf、word、excel、ppt、txt、图片、视频

第一种方式通过 iframe 在线预览 pdf,word,excel,ppt,txt,图片,视频

<template>
    <el-button  @click="openHandler">预览</el-button>
    <el-dialog @close="closeHandler" v-model="maskObj.flag" title="预览">
        <iframe  sandbox="allow-scripts allow-top-navigation allow-same-origin allow-popups" 
            :src="maskObj.url"
            frameborder="0"
            style=" z-index: 1000;height:560px;width:100%">
        </iframe>
    </el-dialog>
</template>
<script lang="ts" setup>
import {shallowReactive } from 'vue'
let maskObj = shallowReactive({
    flag: false,
    url:''
})
const openHandler = () => { 
    maskObj.url = '', //你的地址
    maskObj.flag = true;
    // 在预览的时候,可以判断一个文件的类型,不符合要求的类型不支持预览。
    // 在预览视频的时候,关闭弹窗的时候也应该把视频的值清空。否者视频会一直播放的
}
const closeHandler = () => { 
    maskObj.url =''//清空值
    maskObj.flag = false;
}
</script>

预览word

预览视频

通过插件预览

如果通过插件预览就需要安装对应的插件。
vue-pdf 可以实现对pdf的预览。

vue-pdf预览pdf

<template>
    <el-dialog title="预览" :visible.sync="viewVisible" width="100%" height="100%" :before-close='closeDialog'>
        <div class="pdf" v-show="fileType === 'pdf'">
            <pdf :src="pdfsrc"></pdf>
        </div>
    </el-dialog>
</template>
<script>
// 引入刚才下载的 pdf 
import pdf from 'vue-pdf'
export default {
    components: {
        pdf
    },
    data() {
        yuming: "你的url",  // 
        viewVisible: false, // 弹框隐藏
        fileType: 'pdf', // 文件类型
        pdfsrc: '',  // 文件地址
    },
    created() {
        // 有时PDF文件地址会出现跨域的情况,最好先处理一下
        this.pdfsrc = pdf.createLoadingTask(this.pdfsrc)
    },
    methods: {
        handleEdit(index, row) {
            //console.log(row.wjYsmc)
            if (!/\.(pdf|PDF)$/.test(row.wjYsmc)) {
                window.open(
                    "https://view.officeapps.live.com/op/view.aspx?src=" + this.yuming + "/anli?id=" + row.id,
                    "_blank"
                );
                return false;
            } else {
                let url = this.yuming + "/anli?id=" + row.id
                this.viewVisible = true
                this.pdfsrc = url
            }
        },
        closeDialog(done) {
            done();
        },
    }
}
</script>

个人认为

目前来说,通过iframe来预览的形式会更加好一些。
在 iframe预览视频的时候,关闭弹窗的时候也应该把视频的值清空。否者视频会一直播放的
插件预览的缺点
插件预览只能够预览一种类型。而不能够预览多种类型的资源。
在预览的时候,最好是需要判断一下。符合条件的类型才能够进行预览。

遇见问题,这是你成长的机会,如果你能够解决,这就是收获。

相关文章
|
2月前
|
Java API Apache
Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
【10月更文挑战第29天】Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
167 5
|
20天前
|
人工智能 自然语言处理 JavaScript
Univer:开源全栈 AI 办公工具,支持 Word、Excel、PPT 等文档处理和多人实时协作
Univer 是一款开源的 AI 办公工具,支持 Word、Excel 等文档处理的全栈解决方案。它具有强大的功能、高度的可扩展性和跨平台兼容性,适用于个人和企业用户,能够显著提高工作效率。
101 8
Univer:开源全栈 AI 办公工具,支持 Word、Excel、PPT 等文档处理和多人实时协作
|
1月前
|
数据挖掘 BI
.net8 Syncfusion生成pdf/doc/xls/ppt最新版本
通过使用 Syncfusion,您可以高效地生成各种文档,满足不同的业务需求。这些工具不仅易于使用,还具有高性能和高度可扩展性,是处理文档的理想选择。
64 16
|
3月前
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
198 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
3月前
|
JSON 数据格式
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
LangChain-20 Document Loader 文件加载 加载MD DOCX EXCEL PPT PDF HTML JSON 等多种文件格式 后续可通过FAISS向量化 增强检索
194 2
|
6月前
|
Web App开发 前端开发 安全
2024年新一代WebOffice内嵌网页组件,Web网页在线编辑Word/Excel/PPT
WebOffice控件面临兼容性、用户体验和维护难题。随着浏览器更新,依赖插件的技术不再适用,如Chrome不再支持NPAPI和PPAPI。产品普遍不支持多版本Office并存,定制能力弱,升级复杂。猿大师办公助手提供了解决方案,它兼容多种浏览器,包括最新版和国产浏览器,不依赖插件,支持文档对比,具有丰富的功能和接口,兼容多种Office版本,允许源码级定制,提供终身技术支持,并实现静默在线升级。适用于多种行业和操作系统。
373 15
|
5月前
|
Python
Python——将PPT和Word转为PDF文件
Python——将PPT和Word转为PDF文件
99 1
|
5月前
|
C# 开发者 Windows
WPF遇上Office:一场关于Word与Excel自动化操作的技术盛宴,从环境搭建到代码实战,看WPF如何玩转文档处理的那些事儿
【8月更文挑战第31天】Windows Presentation Foundation (WPF) 是 .NET Framework 的重要组件,以其强大的图形界面和灵活的数据绑定功能著称。本文通过具体示例代码,介绍如何在 WPF 应用中实现 Word 和 Excel 文档的自动化操作,包括文档的读取、编辑和保存等。首先创建 WPF 项目并设计用户界面,然后在 `MainWindow.xaml.cs` 中编写逻辑代码,利用 `Microsoft.Office.Interop` 命名空间实现 Office 文档的自动化处理。文章还提供了注意事项,帮助开发者避免常见问题。
367 0
VBA如何用Excel数据批量生成Word文档
VBA|用Excel数据批量生成并修改用模板创建的Word文档
|
7月前
|
图形学
【unity小技巧】unity读excel配置表操作,excel转txt文本,并读取txt文本内容,实例说明
【unity小技巧】unity读excel配置表操作,excel转txt文本,并读取txt文本内容,实例说明
269 0