1、<embed width="800" height="600" src="test_pdf.pdf"> </embed> 
  

<embed v-show="pdfShow" width="800" height="600" src="../../../public/data/significant.pdf"> </embed>

通过的浏览器:360、Firefox、IE、Chrome

2、<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="600" border="0">

<param name="SRC" value="test_pdf.pdf">

</object>

下面这个完整点:

<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="100%" height="100%" border="0"><!--IE--> 
      <param name="_Version" value="65539"> 
      <param name="_ExtentX" value="20108"> 
      <param name="_ExtentY" value="10866"> 
      <param name="_StockProps" value="0"> 
      <param name="SRC" value="testing_pdf.pdf"> 
<embed src="testing_pdf.pdf" width="100%" height="800" href="testing_pdf.pdf"></embed><!--FF--> 
</object>

通过的浏览器:360、IE

未通过的浏览器:Firefox、Chrome

3、<iframe src="test_pdf.pdf" width="800" height="600"></iframe> 
  

<iframe src="../../../public/data/significant.pdf" width="800" height="600"></iframe>

通过的浏览器:360、Firefox、IE、Chrome

4、用浏览器直接访问http://127.0.0.1/test_pdf.pdf (其实这个不算是在网页内吧)

通过的浏览器:360、Firefox、IE、Chrome

原网址:https://www.jb51.net/article/117166.htm

https://www.npmjs.com/package/vueshowpdf

Install

npm install vueshowpdf -S

Quick Start

//template
<vueshowpdf @closepdf="closepdf" v-model="isshowpdf:pdfurl="pdfurls" @pdferr="pdferr:maxscale='4:minscale='0.6:scale='1.1></vueshowpdf>
<span class="compare" @click="sigTab">显著性检验对照表</span>

//javascript
import vueshowpdf from 'vueshowpdf'
Vue.component("vueshowpdf", vueshowpdf);

export default {
data:{
return:{
//pdfurls:'//cdn.mozilla.net/pdfjs/tracemonkey.pdf',
pdfurls:'http://localhost:3000/data/significant.pdf',
isshowpdf:false
}
},
methods:{
  

sigTab(){
    this.isshowpdf=true
  },

closepdf(){
this.isshowpdf false
},
pdferr(errurl{
console.log(errurl);
}
},
components:{
vueshowpdf
}
}

## 参数说明

  • closepdf 是关闭pdf的时候的出发的函数
  • v-model 是否显示pdf
  • pdfurl pdf的文件地址
  • pdferr 文件地址解析错误时触发的函数 返回错误的pdf地址
  • maxscale 最大放大倍数 默认 2
  • minscale 最小放大倍数 默认 0.8
  • scale 默认放大倍数 默认1.2

server.js

const  express = require('express');
const  path = require('path');
app.use(express.static(path.join(__dirname, 'public'
相关性分析矩阵
<style>
.maxtable{
margin-top: 30px;
}
.per100{
background-color: #FDA49F !important;
}
.per75-100{
background-color: #F1D3AB !important;
}
.per50-75{
background-color: #F1E7AB !important;
}
.per25-50{
background-color: #C6FFFF !important;
}
.per0-25{
background-color:#C7F2AA !important;
}
.per-100{
background-color: #7CFA86 !important;
}
.ivu-table th{
background-color: white;
}
.compare{
color: #FFB806;
cursor: pointer;
}
.credited{
float: right;
margin: 20px 15px 5px 15px;
}
.table{
clear: both;
}
.colbor{
display: inline-block;
width: 30px;
border: 1px solid #C4C8CC;
}
.ivu-col-span-3{
position: absolute;
bottom: 0px;
right: 10px;
}
</style>
<template>
<div style="width:100%">
<ProdDown v-on:choose="getRelatives">
<Icon class="icSearch" type="android-add" size='20' ></Icon>
</ProdDown>
<vueshowpdf @closepdf="closepdf" v-model="isshowpdf" :pdfurl="pdfurls" @pdferr="pdferr" :maxscale='4' :minscale='0.6' :scale='1.1' ></vueshowpdf>
<Row class="maxtable">
<Col span="20">
<div class="credited">
<span>置信度选项</span>
<RadioGroup v-model="credit" >
<Radio label="0.05" ><span>95%</span></Radio>
<Radio label="0.01" ><span>99%</span></Radio>
</RadioGroup>
<span class="compare" @click="sigTab">显著性检验对照表</span>
</div>
<Table class="table" size="small" border :columns="columns" :data="data"></Table>
</Col>
<Col span="3" offset="1">
<ul>
<li class="colorTab">
<span class="colbor per100">&#x3000;</span><span>100%</span>
</li>
<li class="colorTab">
<span class="colbor per75-100">&#x3000;</span><span>75-100%</span>
</li>
<li class="colorTab">
<span class="colbor per50-75">&#x3000;</span><span>50-75%</span>
</li>
<li class="colorTab">
<span class="colbor per25-50">&#x3000;</span><span>25-50%</span>
</li>
<li class="colorTab">
<span class="colbor per0-25">&#x3000;</span><span>0-25%</span>
</li>
<li class="colorTab">
<span class="colbor per-100">&#x3000;</span><span>-100-0%</span>
</li>
</ul>
</Col>
</Row>
</div>
</template>
<script>
import Vue from "vue";
import vueshowpdf from 'vueshowpdf'
// import Echarts from "echarts";
Vue.component("ProdDown", require("../plugs/prodDown.vue").default);
Vue.component("vueshowpdf", vueshowpdf);
export default {
data() {
return {
pdfurls:'http://localhost:3000/data/significant.pdf',
isshowpdf:false,
// pdfShow:false,
pfcodes: [],
legend: [],
cols: [],
credit:'0.01',
val:26,
dataList:[
{"ID":1,ProductA:'BO',ProductB:'C',RelateVal:34,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
{"ID":2,ProductA:'BO',ProductB:'W',RelateVal:74,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
{"ID":4,ProductA:'BO',ProductB:'S',RelateVal:46,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
{"ID":4,ProductA:'C',ProductB:'W',RelateVal:96,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
{"ID":4,ProductA:'C',ProductB:'S',RelateVal:52,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
{"ID":4,ProductA:'W',ProductB:'S',RelateVal:67,SigniVal:60,CrediVal:90,UpdateTime:'2018-03-29 13:03:00.960'},
],
products:[],
columns:[],
data:[],
};
},
methods: {
getRelatives(code,cc,rm) {
console.log(code);
this.legend.push(code);
this.legend=Array.from(new Set(this.legend));
console.log(this.legend.join())
this.$get("/relativity/" + this.legend.join()).then(res => {
console.log(res);
if(res.data.length==0){
console.log(this.$store.state.bd.products)
let oneCode=code.split(',')[code.split(',').length-1]
let cName = this.$store.state.bd.products.filter(p=>p.PF_Code==oneCode.replace(/\'/g,""))[0].Note_Chinese;
this.dataList=[{"ID":0,ProductA:cName,ProductB:cName,RelateVal:1}]
}else{
this.dataList=res.data;
}
this.products=[];
this.columns=[];
this.columns.push({title: ' ',key: 'title', minWidth: 75,})
this.data=[];
this.dataList.forEach((value)=>{
this.products.push(value.ProductA,value.ProductB);
this.products=Array.from(new Set(this.products));
})
console.log(this.products)
for(let val of this.products){
this.columns.push({title:val, key:val,minWidth:75,
renderHeader:(h, params) => {
return h('div', [
h('strong', params.column.title+' '),
h('Icon', {
props: { type: 'close'},
style:{cursor: 'pointer'},
on:{click:()=>{
this.columns.splice(params.index,1);
this.data.splice(params.index-1,1);
let pCode = this.$store.state.bd.products.filter(p=>p.Note_Chinese==params.column.title)[0].PF_Code;
this.legend.splice(this.legend.findIndex(item => item ===`'${pCode}'`), 1)
}}
}),
]);
}});
}
console.log(this.columns)
for(let rowPro of this.products){
let dataDetail={ cellClassName:{}};
for(let value in this.columns){
let colPro=this.columns[value].key;
if(value==='0'){
dataDetail[colPro]=rowPro;
}else{
let val=this.getValue(rowPro,colPro,this.dataList);
dataDetail[colPro]=val;
dataDetail['cellClassName'][colPro]=this.backColor(val);
}
}
console.log(dataDetail)
this.data.push(dataDetail)
}
});
},
backColor(val){
if(val==100) return 'per100';
else if(75<=val&&val<100) return 'per75-100';
else if(50<=val&&val<75) return 'per50-75';
else if(25<=val&&val<50) return 'per25-50';
else if(0<=val&&val<25) return 'per0-25';
else return 'per-100';
},
getValue(rowPro,colPro,dataList) {
for(let data of dataList){
if((data["ProductA"] == rowPro && data["ProductB"]==colPro)||(data["ProductA"] == colPro && data["ProductB"]==rowPro)){
return (data["RelateVal"]*100).toFixed(2);
}
}
return 100.00;
},
sigTab(){
console.log('显著性检验对照表')
this.isshowpdf=true
},
closepdf(){
this.isshowpdf = false
},
pdferr(errurl) {
console.log(errurl);
}
},
mounted() {
// this.getHisVixs();
}
};
</script>

转载于:https://www.cnblogs.com/xfcao/p/9239674.html

在网页中显示PDF文件及vue项目中弹出PDF相关推荐

  1. 在html中显示word,如何在浏览器网页中显示word文件内容

    把word文件读到byte[]中,再Response.OutputStream.Write(bytes)到客户端去 Page_Load事件中写: //FileStream   fs   =   new ...

  2. 完美解决vue项目中弹出框滑动时,内部页面也跟着滑动问题

    完美解决vue项目中弹出框滑动时,内部页面也跟着滑动问题 参考文章: (1)完美解决vue项目中弹出框滑动时,内部页面也跟着滑动问题 (2)https://www.cnblogs.com/qhanti ...

  3. 在html中加入pdf文件吗,如何在网页中显示PDF文件

    我们是不是对百度文库能直接在网页上显示PDF文件感到好奇,你是否也想实现这样的功能?很多朋友认为可以直接在网页中插入代码就可以实现这个功能,其实要在网页中完整地显示PDF文件,需要把PDF文件转换成S ...

  4. html显示docx,网页中显示PDF的HTML代码.docx

    网页中显示PDF的HTML代码 您可能想打开文档至某一特别页面或目标,或显示书签.要与 链接一起放入一个动作命令,可紧接在 PDF 文件名后面键入数字符号 (#) 和该命令.以下表格显示可能的动作命令 ...

  5. 非常好的在网页中显示pdf的方法

    今天有一需求,要在网页中显示pdf,于是立马开始搜索解决方案,无意中发现一个非常好的解决方法,详见http://blogs.adobe.com/pdfdevjunkie/web_designers_g ...

  6. 将VS2005中的.CS文件在网页中显示的方法

    今天在做AccessMembershipProvider的DEMO时,想把支持Access数据库提供程序的源码在网页中显示出来,可是复制源码后在网页中显示的是不换行的,后来我在尝试了很多办法后,终于有 ...

  7. 网页中显示xml,直接显示xml格式的文件

    第一种方法 使用<pre></pre>包围代码(在浏览器中测试不行啊,但是在富编辑器中又可以,怪): 使用<xmp></xmp>包围代码(官方不推荐,但 ...

  8. xml格式html显示,网页中显示xml,直接显示xml格式的文件

    第一种方法 使用 包围代码(在浏览器中测试不行啊,但是在富编辑器中又可以,怪): 使用 包围代码(官方不推荐,但是效果不错哦,在firefox和IE都可以): 使用包围代码(在富编辑器和浏览器中均可以 ...

  9. 在网页中显示CHM (c# csharp .net asp.net winform)

    CHM即"已编译的帮助文件",主要由.hhc(目录文件)..hhk(索引文件)以及相应的帮助主题文件(.html,.htm)这些内容编译而成. 方法对比 在网页中显示CHM内容,大 ...

最新文章

  1. AC日记——传染病控制 洛谷 P1041
  2. Python之Selenium的爬虫用法
  3. js、jquery、h5、css等简记
  4. 十进制数和二进制数之间的转换
  5. 分享一套基于SpringBoot和Vue的企业级中后台开源项目,这个项目有点哇塞!
  6. [USACO1.2]回文平方数 Palindromic Squares
  7. CF1167F. Scalar Queries
  8. 交叉编译器arm-linux-gcc
  9. 深度解析:Oracle数据库SYSDATE到PostgreSQL数据库最佳转换
  10. 荣耀9X Pro外观设计图曝光:升降前置摄像头/保留3.5mm耳机孔
  11. 史上最全正则表达式语法,文末附常用表达式!
  12. Photoshop抠图--使用图层蒙版抠图
  13. 后门防御阅读笔记,Black-box Detection of Backdoor Attacks with Limited Information and Data
  14. java技术面试一定要跳出来的坑,可曾听闻!
  15. SOMv3.3.3二次开发中LUA脚本对机基础操作指南
  16. ALLEGRO模块无法移动解决方案
  17. 新手村 Boss战-入门综合练习2 小鱼会有危险吗
  18. 算法入门章——引出贯穿《算法导论》全书的算法分析和设计框架
  19. 搜索引擎:Elasticsearch、Solr、Lucene
  20. linux内核形式化验证,聪明人的笨功夫 -- MesaTEE安全形式化验证实践

热门文章

  1. 您可以找到的 5 种最佳数据恢复软件
  2. 我的2018-2019
  3. 常规调幅系统matlab结果,基于MATLAB的单边带调幅系统的建模仿真.doc
  4. 全新数据增强方式KeepAugment,简单高效提升模型精度!
  5. 2020年电子设计竞赛B题 ——单相在线式不间断电源 回顾
  6. 软件工程中的结构化分析方法
  7. 写入grib2++java_科学网—Mixed grib-1 and grib-2 data file - 王亚强的博文
  8. [默认值]WIFI名称修改
  9. 修改/dev/shm大小
  10. MIPS - 反汇编 - 拆炸弹 - bomb