在线word预览js js 在线预览word文档
摘要:前台js有没有办法实现附件比如word或者pdf的预览网页上有错误原因:1 网页本身的问题,目前许多网站都是用的共享型模板,一般这样的模板都存在不通用,原模板的所有js(javascript)脚本可能...
发布日期:2020-07-30前台js有没有办法实现附件比如word或者pdf的预览
网页上有错误原因:1.网页本身的问题,目前许多网站都是用的共享型模板,一般这样的模板都存在不通用,原模板的所有js(javascript)脚本可能又没有被完全用到。
加之设计者的水平或是疏忽等问题。
导致在页面上找不到js对象。
就会显示出网页有问题的现象。
2.用户电脑本身问题。
如是用的浏览器的版本问题,或者所浏览页面需要某些插件和组件,可能曾经设置屏蔽和没有安装都可能出现网页上有错误问题。
3.恶意病毒和流氓插件引起。
许多网民在不知情的情况下,安装一些带有流氓捆绑插件的安装程序,这样的情况也容易导致出现网页上有错误。
网页上有错误解决方案首先,我们来介绍下手动解决网页上有错误解决方法(操作较繁琐)1、点击“开始”菜单,打开“运行”。
2、输入regsvr32 jscript.dll后选择“确定”。
出现提示(jscript.dll中的DIIRegisterServer成功)后,点击“确定”。
3、再次输入regsvr32 vbscript.dll选择“确定”。
再一次出现提示(vbscript.dll中的DIIRegisterServer成功)后,点“确定”。
经过以上两次成功提示,说明已成功修复IE组件。
4、将浏览器的过滤等功能关闭后,清除一下浏览器的缓存(工具->Internet选项->;(在Internet 临时文件框中-删除Cookies),再点Internet 临时文件框中删除文件(记得勾上删除所有脱机内容),确定后,然后再重新打开浏览器尝试!软件解决网页上有错误下载金山毒霸2011——病毒查杀——快速扫描,金山毒霸2011在清除电脑内捆绑的恶意插件以及盗号木马病毒的同时能智能修复电脑中存在的问题。
如何创建pdf的buffer,让pdf.js实现预览pdf文件
pdf.js简介PDF.js 是基于开放的 HTML5 及 JavaScript 技术实现的开源产品。
简单说就是一个 PDF 解析器。
运用HTML5JavaScript(即pdf.js仅使用安全的web语言,不包含任何攻击者可以用的本地代码块)的PDF阅读器pdf.js,直接在标准的HTML页面上载入和渲染PDF文件, 还可以提高安全性(不需要安装第三方插件,安全性由浏览器保证),浏览器所做的安全措施已经为pdf.js提供了安全的运行环境。
其对IE和 FireFox浏览器的要求是IE9+, FireFox19+。
在线示例: http://jsbin.com/pdfjs-helloworld-v2/1/edit , http://jsbin.com/pdfjs-prevnext-v2/1/edit源码:https://github.com/mozilla/pdf.js官网:http://mozilla.github.io/pdf.js/pdf.js VS 传统浏览器读取pdf一般来说,PDF档案格式都是在浏览器中由外挂程式来描绘,通常是Adobe自己的PDF reader或来自其他供应商的描绘工具,但这些外挂通常无法充分运用PDF的特点,而且由于含有大量的受信任代码,使得Google Chrome浏览器必须运用SandBox沙箱原理,来检查PDF描绘工具是否遭到未知病毒感染。
使用adobe,必须在本地安装软件才能使用,而pdf.js不依赖环境、渲染速度快(测试过,确实很快)、安全性高。
pdf.js渲染PDF文件pdf.js渲染PDF文件的流程:Fetch pdf (url / buffer) ——> canvas ——> 渲染如果要深入pdf的渲染,需要去研究pdf.js源代码。
pdf.js可通过pdf文件的地址或pdf数据流获取pdf,具体实现是调用接口函数 PDFJs.getDoc(url/buffer)将pdf载入html,通过canvas处理, 然后渲染pdf文件。
网上给出的都是通过url来获取pdf的例子,而我在做项目的时候,后台(Python)要求是发pdf的数据流给前台,前台接收pdf的buffer,然后通过pdf.js来渲染。
当然最初尝试buffer出现了很多问题,具体问题总结如下:1)如何通过$.ajax接收后台发给前台的buffer数据;2)如何将buffer传给pdf.js来处理(这里我使用了viewer.js, 所以需要考虑的是如何将buffer传给viewer.js来处理);3)如何将pdf.js转换成pdf.js可以接收的buffer格式;(对应问题解决见代码注释)注:viewer.js是pdf.js的扩展,其将打印、翻页、缩放等功能进行了实现,且界面非常好看。
也就是说如果你引入了viewer.js,pdf的渲染和渲染之后的功能界面都已经帮你实现了,你不用自己去写界面。
先从官网:http://mozilla.github.io/pdf.js/ 下载代码,然后使用文件viewer.html , 我的html就是在viewer.html 的基础上修改的,下面我给出buffer的例子:在线预览 {% load static %}{% get_static_prefix as STATIC_URL %} //convertDataURIToBinary() //不知道什么原因如果后台直接将pdf的数据流发给前台,得到的是乱码,将数据转换成 Uint8Array始终不成功 //所以就让后台将发送之前的数据流做 了base64编码发给前台,前台再解码得到的数据就不是乱码了。
var BASE64_MARKER = ";base64,"; var preFileId = {{mark}}; //viewer.js全局变量,传入buffer,回答问题2 var DEFAULT_URL $(document).ready(function(){ $.ajax({ type:"post", async: false, //ajax接收pdf数据流,注意dataType值的设置是否有错,如果不指定,jQuery将自动根据HTTP包MIME信息返回 //responseXML或responseText . 回答问题1 contentType:"application/pdf;charset=utf-8", url:"{% url netPan.File.views.browserFuf%}", data:{ id: preFileId }, success:function(data){ var pdfAsDataUri = data; //如果引入了viewer.js , 处理方法 var pdfAsArray = convertDataURIToBinary(pdfAsDataUri); DEFAULT_URL = pdfAsArray; // 只引入了pdf.js, 未引入viewer.js, 处理方法 // var pdfAsArray = convertDataURIToBinary(pdfAsDataUri); // PDFJS.getDocument(pdfAsArray).then(); 自己写pdf的处理函数 } }); });function convertDataURIToBinary(dataURI) { //编码转换,回答问题3 var base64Index = dataURI.indexOf(BASE64_MARKER) + BASE64_MARKER.length; var base64 = dataURI.substring(base64Index); var raw = window.atob(base64); var rawLength = raw.length; //转换成pdf.js能直接解析的Uint8Array类型,见pdf.js-4068 var array = new Uint8Array(new ArrayBuffer(rawLength)); for(i = 0; i array[i] = raw.charCodeAt(i); } return array; } 省略内容
怎么实现前端HTML页面在线预览服务器传来的PDF和Word文件
1-apache的POI,此方法对Excel的导出做的很好,目前对Word的导出方面的功能尚未完全。
2-纯JavaScript脚本实现。
主要通过客户端调用本机Office组件来实现。
3-在JSP页面引入头文件实现。
纯JavaScript脚本实现细节方面大体是创建一个word组件ActiveXObject("Word.Application"),用js通过表ID取得表内容然后保存到word,要注意的是js实现有很多不好的地方,例如Internet选项需要把ActiveX空间全部启用,安全级别设置为中。
这样的话岂不是每台机器都要配置一下。
其次每次生成word文档以后弹出对话框(无法保存此文件,因为它已在别处打开(C:\...\STARTUP\Powerword.dot)),出现此问题就需要把C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP下的Powerword.dot文件删除,每次遇到此问题就需要删除文件来解决,十分不方便。
移动端页面,如何解析预览 word/excel/PDF文件?
转换过程非常耗费资源,低配的CPU几乎能跑满,服务器卡死。
转换时间也非常漫长,这个时间主要是卡在了转换PDF上面。
转换完成服务器会遗留大量Excel。
所以很多程序员把精力浪费在了调试程序上面。
设置非常麻烦,本身微软官方的说法Office软件是客户端程序,在与IIS交互的时候本身就未设计。
缺点服务器上必须安装Office软件,Excel页面格式未设置,会出现一张表格打印出多页来,阅读体验大大下降、Word进程无法正常退出,有一些折中的解决办法.exe工具生成swf格式的Flash文件,网页中加载flexpaper免费开源工具(有广告)实现Flash文件的预览。
优点有效的保护的源文件及文件的复制.config中设置 ,一个是在Office软件的设置中设置跟桌面交互。
严重浪费磁盘空间,一个文件还需要一个PDF文件 利用Office2007以上版本的一个PDF插件SaveAsPDFandXPS,可以在网上搜索、一个SWF文件.exe可以导出PDF文件,然后再利用免费的swftools。
有两点在调试的时候需要注意。
导出PDF文件本身是个打印过程,版权有保证,不可复制也是缺点。
源码是自己的。
一个是在web,是否每次都转换 ...
迅捷pdf转换器怎么转换成word
似乎有些影响美观,其实只是为了方便所用,都是不会打印出来的,打开“选项”设置,在“视图”选项卡下的“格式标记”栏中,去掉“段落标记”前的勾选即可。
此时。
如果要去除这个黑点,其他段落标记也不再显示了。
word里还有很多这样的标记这个黑点只是一个标记,用打印预览看,黑点不再显示了,所以这个黑店并不会打印出来,可以放心使用“标题”样式,可以通过设置让它不再显示。
选择“工具”菜单下的“选项”命令,虽然在编辑时能看到