<button onclick="HtmlToPdf()"> 转储pdf </button>
<button onclick="HtmlToImage()"> 转储image </button>
<div id="pdf" style="width:800px;margin:0 auto">
<h1>第一章 总  则</h1>
<h3>第一条</h3>
<p>为了保护劳动者的合法权益,调整劳动关系,建立和维护适应社会主义市场经济的劳动制度,促进经济发展和社会进步,根据宪法,制定本法。</p>
<h3>第二条</h3>
<p>在中华人民共和国境内的企业、个体经济组织(以下统称用人单位)和与之形成劳动关系的劳动者,适用本法。 国家机关、事业组织、社会团体和与之建立劳动合同关系的劳动者,依照本法执行。</p>
<h3>第三条</h3>
<p>劳动者享有平等就业和选择职业的权利、取得劳动报酬的权利、休息休假的权利、获得劳动安全卫生保护的权利、接受职业技能培训的权利、享受社会保险和福利的权利、提请劳动争议处理的权利以及法律规定的其他劳动权利。
劳动者应当完成劳动任务,提高职业技能,执行劳动安全卫生规程,遵守劳动纪律和职业道德。</p>
<h3>第四条</h3>
<p>用人单位应当依法建立和完善规章制度,保障劳动者享有劳动权利和履行劳动义务。</p>
<h3>第五条</h3>
<p>国家采取各种措施,促进劳动就业,发展职业教育,制定劳动标准,调节社会收入,完善社会保险,协调劳动关系,逐步提高劳动者的生活水平。</p>
<h3>第六条</h3>
<p>国家提倡劳动者参加社会义务劳动,开展劳动竞赛和合理化建议活动,鼓励和保护劳动者进行科学研究、技术革新和发明创造,表彰和奖励劳动模范和先进工作者。</p>
<h3>第七条</h3>
<p>劳动者有权依法参加和组织工会。 工会代表和维护劳动者的合法权益,依法独立自主地开展活动。</p>
<h3>第八条</h3>
<p>劳动者依照法律规定,通过职工大会、职工代表大会或者其他形式,参与民主管理或者就保护劳动者合法权益与用人单位进行平等协商。</p>
<h3>第九条</h3>
<p>国务院劳动行政部门主管全国劳动工作。 县级以上地方人民政府劳动行政部门主管本行政区域内的劳动工作。</p>
</div>
<script type="text/javascript" src="http://html2canvas.hertzen.com/dist/html2canvas.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.5/jspdf.debug.js"></script>
<script type="text/javascript">
// 指定 html元素 转pdf 下载至本地
function HtmlToPdf() {
let dom = document.getElementById("pdf");
html2canvas(dom).then(canvas => {
let url = canvas.toDataURL("image/png", 1);
let pdf = new jsPDF('', 'pt', 'a4');
pdf.addImage(url, 'png', 10, 60)
pdf.save('test.pdf');
});
}
// 指定 html元素 转图片 可替换已有元素或追加至当前document中
function HtmlToImage() {
let dom = document.getElementById("pdf");
html2canvas(dom).then(canvas => {
let url = canvas.toDataURL("image/png", 1);
let imgHtml = new Image();
imgHtml.src = url;
dom.innerHTML = '';
dom.appendChild(imgHtml)
});
}
</script>

JS原生实现html转pdf / html转图片 (html2canvas.js + jspdf.js )的更多相关文章

  1. js原生代码实现轮播图案例

    一.轮播图是现在网站网页上最常见的效果之一,对于轮播图的功能,要求不同,效果也不同! 我们见过很多通过不同的方式,实现这一效果,但是有很多比较麻烦,而且不容易理解,兼容性也不好. 在这里分享一下,用j ...

  2. JS原生效果瀑布流布局的实现(一)

    JS原生效果 实现: HTML页面布局: <!DOCTYPE html> <html> <head> <meta charset="utf-8&qu ...

  3. 工作当中实际运用(3)——js原生实现鼠标点击弹出div层 在点击隐藏

    function onmou(){ var divs=document.getElementById('kefuDV');//获取到你要操作的div if (divs.style.display==& ...

  4. 仿jQuery的siblings效果的js原生代码

    仿jQuery的siblings效果的js原生代码 <previousSibling> 属性返回选定节点的上一个同级节点(在相同树层级中的前一个节点). <nextSibling&g ...

  5. js原生的url操作函数,及使用方法。(附:下边还有jquery对url里的中文解码函数)

    js原生的url操作函数,完善的. /*****************************/ /* 动态修改url */ /*****************************/ var ...

  6. 图片轮播(左右切换)--JS原生和jQuery实现

    图片轮播(左右切换)--js原生和jquery实现 左右切换的做法基本步骤跟 上一篇文章  淡入淡出 类似,只不过修改了一些特定的部分 (1)首先是页面的结构部分 对于我这种左右切换式 1.首先是个外 ...

  7. 图片轮播(淡入淡出)--JS原生和jQuery实现

    图片轮播(淡入淡出)--js原生和jquery实现 图片轮播有很多种方式,这里采用其中的 淡入淡出形式 js原生和jQuery都可以实现,jquery因为封装了很多用法,所以用起来就简单许多,转换成j ...

  8. 手把手教你js原生瀑布流效果实现

    手把手教你js原生瀑布流效果实现 什么是瀑布流效果 首先,让我们先看一段动画: 在动画中,我们不难发现,这个动画有以下特点: 1.所有的图片的宽度都是一样的 2.所有的图片的高度是不一样的 3.图片一 ...

  9. js原生 + jQuery实现页面滚动字幕

    js原生/jQuery实现页面滚动字幕效果 17:45:49 在新闻列表或者文章列表信息等页面中很容易要求实现字幕滚动的效果,以下为简单的实现页面中滚动字幕的效果 1.jQuery实现页面滚动字幕效果 ...

  10. js原生获取className&多选一

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

随机推荐

  1. 分享一个Byte KB MB GB 单位转换方法 从《C#本质论第三版》

    static public string FormatBytes(long bytes) { string[] magnitudes = new string[] { "GB", ...

  2. 莫烦pytorch学习记录

    感谢莫烦大神Pytorch B站视频:https://www.bilibili.com/video/av15997678?p=11 一个博主的笔记:https://blog.csdn.net/Will ...

  3. NOIP模拟58

    T1 Lesson5 ! 解题思路 首先对于整张图求出拓扑序,然后顺着拓扑序其实也就是顺着边的方向,更新最长路,也就是从 1 节点到达这个节点的最长路. 然后再逆着拓扑序,反向求一下最长路,也就是从这 ...

  4. itest(爱测试) 4.5.1 发布,开源BUG 跟踪管理 & 敏捷测试管理软件

    本次发布一共6个更新(其中一个4.5.0的重大BUG,不得不先发布4.5.1).4.5.0中增加ldap 登录支持时,引入一个BUG,新增的itest本地用户不能登录,除非重启.  V4.5.1详情如 ...

  5. JavaSE什么是面向对象?

    目录 重点!!!面向对象 面向过程与面向对象 面向过程的程序思想 面向对象程序思想 类和对象(面向对象的核心概念) 类: 类的结构 对象:(Everything is an object) 重点!!! ...

  6. C#.NET Rsa私钥加密公钥解密

    在C#中,RSA私钥只能签名,不能加密,如果要加密,要借助BouncyCastle库. nuget 中引用 Portable.BouncyCastle. 工具类: RsaEncryptUtil usi ...

  7. 高并发缓存中间件Redis

    https://tech.meituan.com/2020/07/01/kv-squirrel-cellar.html 美团万亿级 KV 存储架构与实践 阿里云 redis文档 https://hel ...

  8. __proto__和[[Prototype]]的区别

    __proto__和[[Prototype]]的区别 先看下面这一段代码: const obj1 = Object.create(null); // very plain object obj1.__ ...

  9. SM4Utils加解密demo

    SM4Utils加解密demo package com.example.core.mydemo.sm4; import cn.org.bjca.utils.SM4Utils; public class ...

  10. 为什么https要使用证书

    为什么https要使用证书 什么是httpshttps不是一种新的协议,只是http的通信接口部分使用了ssl和tsl协议替代,加入了加密.证书.完整性保护的功能. 加密:共享密钥加密加密和解密公用一 ...