上一节打开PDF文件,标题一直显示文件名称html
若是咱们标题名称为了安全设置编码字符这时候客户就看不懂标题了,为了客户体验标题是文件名称安全
分析viewer.js 查找设置标题 document.titleui
还真有这个this
分析编码
setTitleUsingUrl: function setTitleUsingUrl(url) {
this.url = url;
this.baseUrl = url.split('#')[0];
var title = (0, _ui_utils.getPDFFileNameFromURL)(url, '');
if (!title) {
try {
title = decodeURIComponent((0, _pdfjsLib.getFilenameFromUrl)(url)) || url;
} catch (ex) {
title = url;
}
}
this.setTitle(title);
},
setTitle: function setTitle(title) {
if (this.isViewerEmbedded) {
return;
}
document.title = title;
},
很明显是经过截图文件名称这时咱们只要改
this.setTitle(title); 里面title就行了
如何是文件名称呢
对于viewr.html咱们无法PHP带值,只能经过URL作文章了
?file='PDF地址'+'&title='+'文件名称'
这样咱们能够经过截取文件名称
首先:
viewer.html写一个方法用于取文件名称
//获取地址栏参数值
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)","i");
var r = window.location.search.substr(1).match(reg);
if (r!=null) return (r[2]); return null;
}
而后
viewer.js
this.setTitle(decodeURIComponent(getQueryString('title'))); 如上便可实现不一样PDF显示不一样名称