纯前端js导出pdf,已经用于生产环境. 工具: 1.html2canvas,一种让html转换为图片的工具. 2.pdfmake或者jspdf ,一种生成.编辑pdf,并且导出pdf的工具. pdfmake:http://pdfmake.org 优点: 能够支持中文,具有部分自适应布局功能,需要vfs_fonts.js字体文件. 缺点:支持中文的vfs_fonts.js文件一般较大. 如果图片过大,不会自动分页. 生成vfs_fonts.js文件的方法如图,npm install pdfmak…
纯前端下载pdf链接文件,而不是打开预览的解决方案 一,介绍与需求 1.1,介绍 XMLHttpRequest 用于在后台与服务器交换数据.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 问题:Chrome 会自动调用内置的 pdf 阅读器打开 1.2,需求 在谷歌(Chrome)浏览器中,使用a标签属性download下载pdf链接文件,如果是相同域时,可以直接下载;但是如果域不同,则不是下载,而是直接打开页面预览文件.但是需求是直接点击下载文件,而不是打开预览:以及下载后…
在开发后台管理系统的时候,很多地方都要用到导出excel 表格,比如将table中的数据导出到本地,那么实现这种需求往往有两种方案: 一.后端开发一个下载链接,前端将这个链接放到 a 标签的 href 中,一点就能下载. 优点:对于前端来说实现简单,不用写过多的代码,也不依赖第三方库,兼容性好 缺点:如果前端操作数据更改了,需要发给后端才能导出 二.前端借助一些第三方库实现 下面以vue项目为例: 首先需要安装三个依赖 npm install file-saver xlsx -S // 加载sc…
html2canvas文档地址 http://html2canvas.hertzen.com/configuration 方式一:使用html2canvas和jspdf插件实现 该方式是通过html2canvas将HTML页面转换成图片,然后再通过jspdf将图片的base64生成为pdf文件.实现步骤如下: 1,下载插件模块 npm install html2canvas jspdf --save 2,定义功能实现方法 在项目工具方法存放文件夹utils中创建htmlToPdf.js文件,代码…
vue-axios获取数据很多小伙伴都会使用,但如果前后端分离且后台没设置跨域许可,那要怎样才能解决跨域问题? 常用方法有几种: 通过jsonp跨域 通过修改document.domain来跨子域 使用window.name 或location.hash 来进行跨域 使用HTML5中的window.postMessage方法来跨域 图片ping或script标签跨域 WebSocket CORS 以上方法或多或少都有一定限制,有的不支持post有的需要后台配合,这里就不一一分析了: 那如何才能简…
现英文9px 设置 在chrome 下无效,可以通过 -webkit-transform: scale(0.75); 12*0.75 =9  得到小字体(在chrome浏览器下 大小缩放到0.75倍) 这个是chrome默认设置了字体最小值…
前言(感谢技术的分享者) 参考博客地址 github地址 由SheetJS出品的js-xlsx是一款非常方便的只需要纯JS即可读取和导出excel的工具库,功能强大,支持格式众多,支持xls.xlsx.ods(一种OpenOffice专有表格文件格式)等十几种格式. demo(上面参考博客写的很清楚,只给一个我的demo) <script type="text/javascript" src="xlsx.core.min.js"></script&…
<html> <head> <p style="font-size: 20px;color: red;">使用a标签方式将json导出csv文件</p> <button onclick='tableToExcel()'>导出</button> </head> <body> <script> function tableToExcel(){ //要导出的json数据 var jso…
此例子是利用html特性,纯前端导出excel,样式不好看,兼容主流浏览器. var tableid = jQuery(this).closest("div.tab-label-wrap").siblings("div.tab-panel-wrap").find("table.data-grid").get(0); var idTmr; if(getExplorer()=='ie') { var curTbl = jQuery(this).clo…
中文版Chrome浏览器不支持12px以下字体的解决方案 Chrome 27之前的中文版桌面浏览器会默认设定页面的最小字号是12px,英文版则没有限制,主要是因为chrome认为汉字小于12px就会增加识别难度,尤其是中文常用的宋体和微软雅黑.而我们在实际项目中,对于数字/英文内容,其他字体的文本可能会有特殊的需求要求它们以更小的字号来显示,这个时候就需要取消浏览器的自动调整功能了. 一般解决方案是禁止webkit浏览器配置调整网页的字体大小.如下CSS定义方式: [css] view plai…