当前位置: 首页 > news >正文

电子商务网站建设编码产品互联网推广

电子商务网站建设编码,产品互联网推广,海南最新政策,个人网站备案的好处1. 功能实现方案 1.html转换成canvas后生成图片导出pdf(本文选用) html转canvas插件:html2canvas是一款将HTML代码转换成Canvas的插件;canvas生成pdf:jsPDF是一个使用Javascript语言生成PDF的开源库 2.HTML代码转出…

1. 功能实现方案

1.html转换成canvas后生成图片导出pdf(本文选用)

  • html转canvas插件:html2canvas是一款将HTML代码转换成Canvas的插件;
  • canvas生成pdf:jsPDF是一个使用Javascript语言生成PDF的开源库

2.HTML代码转出pdf

wkhtmltopdf是一款将HTML代码转换成pdf的插件,表格场景使用居多

2.技术实现(基于html2canvas和jsPDF实现)

1.安装插件

npm install html2canvas
npm install jspdf

2.封装函数

这里函数参考了网上多种,最后自己选择了这种并发并修改了部分内容,实现可以传入两个参数来指定要导出为pdf的文件

src/utils/topdf.js

import html2Canvas from "html2canvas";
import JsPDF from "jspdf";export default {install(Vue, options) {console.log(options);// vue原型上挂载getPdf方法实现转换功能// 参数:(dom元素,导出文件的文件名)Vue.prototype.getPdf = function (dom, title) {html2Canvas(document.querySelector(dom), {allowTaint: true,}).then(function (canvas) {let contentWidth = canvas.width;let contentHeight = canvas.height;let pageHeight = (contentWidth / 592.28) * 841.89;let leftHeight = contentHeight;let position = 0;let imgWidth = 595.28;let imgHeight = (592.28 / contentWidth) * contentHeight;let pageData = canvas.toDataURL("image/jpeg", 1.0);let PDF = new JsPDF("", "pt", "a4");if (leftHeight < pageHeight) {PDF.addImage(pageData, "JPEG", 0, 0, imgWidth, imgHeight);} else {while (leftHeight > 0) {PDF.addImage(pageData, "JPEG", 0, position, imgWidth, imgHeight);leftHeight -= pageHeight;position -= 841.89;if (leftHeight > 0) {PDF.addPage();}}}PDF.save(title + ".pdf");});};},
};

3.全局注册

在main.js中导入并注册

//全局注册 打印pdf:
import htmlToPdf from "./utils/topdf";
Vue.use(htmlToPdf);

4.使用

解释:1.为需要打印的dom元素添加类名或者id名以方便获取dom

​ 2.给打印按钮添加点击事件

​ 2.1 点击事件触发全局挂载的getPdf方法

​ 2.2 参数为 (dom元素,导出pdf的文件名)

<button @click="getPdf('.pdf', 'file2')">导出pdf</button><div class="pdf"><p v-for="(item, index) in 50" :key="index">{{ item }}123123121322313212313132123</p></div>

5. 问题

会出现衔接问题

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hsxiY8Ie-1677647378317)(C:\Users\28132\AppData\Roaming\Typora\typora-user-images\1677646897722.png)]

防止截断可以参考这个博客https://www.cnblogs.com/jimyking/p/17101947.html

等有时间再自己总结

http://www.ds6.com.cn/news/66962.html

相关文章:

  • 手机端怎么打开响应式的网站可以推广发广告的app
  • 电子商务网站建设技术百度推广网页版
  • 企业展示网站如何建seo排名优化推广
  • 网站模板可视化编辑seo怎么才能做好
  • 电子商务网站建设前期准备代运营一个月多少钱
  • 美食网站是怎么做的关键词智能优化排名
  • 大型b2b电子商务平台开发优化seo可以从以下几个方面进行
  • 宠物网站建设总结宁波seo优化公司排名
  • 北京网站建设报价明细网站制作教程
  • 泉州网络公司seo收录查询
  • 专业商城网站制作公司公司网站制作
  • 深圳四站合一网站建设电话品牌seo培训咨询
  • 西安做网站比较好的公司天猫seo搜索优化
  • 做网站能用思源黑体吗网店推广网站
  • 0791网站建设上海企业网站seo
  • 北京论坛建站模板网络推广的基本渠道
  • 建设个直播网站要多少钱百度快照搜索
  • 西安给公司做网站外链网盘
  • python爬虫爬小说来做网站站长之家查询网站
  • 郑州营销型网站制作教程网站登录入口
  • 北京建设银行社会招聘网站好的在线crm系统
  • 长沙环路建设开发有限公司网站seo 推广怎么做
  • 重庆李健做网站广告推广网站
  • 怎么做公司网站优化优化设计一年级下册数学答案
  • 服装工厂做网站的好处经典软文范例大全
  • 大连模板网站制作电话自助建站系统哪个好用
  • 四川做网站找谁seo研究协会网是干什么的
  • 微信开发什么时候好seo优化推广流程
  • 安徽政府网站建设郑承乾品牌营销策划方案案例
  • jsp做网站案例微信推广引流方法