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

创建网站目录权限商家联盟营销方案

创建网站目录权限,商家联盟营销方案,福田欧马可,在哪个网站做一照一码在进行下方操作前,请你先安装 html2canvas 和 jspdf 包。 1、使用html2canvas将dom元素生成图片 // 获取要转换的dom const ele document.getElementById("dom"); // 生成canvas对象 let canvas await html2canvas(ele); 2、生成PDF对象,将…

在进行下方操作前,请你先安装 html2canvas 和 jspdf 包。

1、使用html2canvas将dom元素生成图片

// 获取要转换的dom
const ele = document.getElementById("dom");
// 生成canvas对象
let canvas = await html2canvas(ele);

2、生成PDF对象,将生成的canvas对象转换成base64添加进PDF对象中

// 新建JsPDF对象
const PDF = new jsPDF({orientation: 'p', //参数: l:横向  p:纵向unit: 'mm', //参数:测量单位("pt","mm", "cm", "m", "in" or "px")format: 'a4', //A4纸
})// 将生成的canvas转换成base64添加进PDF对象中
PDF.addImage(canvas.toDataURL('image/jpeg', 1), 'JPEG', 10, 10);// 使用PDF.save()方法进行保存
PDF.save(`${你的文件名}.pdf`)

3、进阶用法

        1. canvas要生成的dom高度比较大,a4纸放不下怎么分页?

        2. 如何构建pdf文件上传到服务器中?

4、完整代码

// 新建JsPDF对象
const PDF = new jsPDF({orientation: 'p', //参数: l:横向  p:纵向unit: 'mm', //参数:测量单位("pt","mm", "cm", "m", "in" or "px")format: 'a4', //A4纸
})// 将dom转换成canvas对象
const ele = document.getElementById("qkqqProbationDetail");
let canvas = await html2canvas(ele);
const ctx = canvas.getContext('2d')//A4大小,210mm x 297mm,四边各保留10mm的边距,显示区域190x277
const a4w = 190
const a4h = 277
//按A4显示比例换算一页图像的像素高度
const imgHeight = Math.floor(a4h * canvas.width / a4w)
let renderedHeight = 0
while (renderedHeight < canvas.height) {let page = document.createElement("canvas");page.width = canvas.width;//可能内容不足一页page.height = Math.min(imgHeight, canvas.height - renderedHeight);//用getImageData剪裁指定区域,并画到前面创建的canvas对象中page.getContext('2d').putImageData(ctx.getImageData(0, renderedHeight, canvas.width, Math.min(imgHeight, canvas.height - renderedHeight)), 0, 0);// canvas转图片数据保留10mm边距PDF.addImage(page.toDataURL('image/jpeg', 1), 'JPEG', 10, 10, a4w, Math.min(a4h, a4w * page.height / page.width));renderedHeight += imgHeight;//判断是否分页,如果后面还有内容,添加一个空页if (renderedHeight < canvas.height) {PDF.addPage()}
}// 简单版,不需要考虑分页
// PDF.addImage(canvas.toDataURL('image/jpeg', 1), 'JPEG', 10, 10)// ** 
// dataurlstring 可以拿到base64来进行你的展示
// blob 可以拿到文件流进行上传操作
const pdf_base64 = PDF.output("dataurlstring");
const pdf_blob = PDF.output("blob");
// 使用File构造函数和blob数据创建一个新的File对象
const file = new File([pdf_blob], `${你的pdf}.pdf`, {type: "application/pdf",
});// ** 不上传的话,直接调用保存,将pdf文件保存在你的电脑上
PDF.save(`${你的pdf}.pdf`)

http://www.15wanjia.com/news/16849.html

相关文章:

  • 济南百度做网站今日国内新闻头条15条
  • 天宁网站建设制作东莞seo关键词
  • 设计交流网站的毕业论文公关公司是干嘛的
  • 口碑营销5t理论seo是什么意思 seo是什么职位
  • 网站和app的区别百度百度一下你就知道
  • 网站设计制作培训友情链接网站免费
  • 网站公安局备案 所需要的材料外国搜索引擎登录入口
  • 常见的微网站平台有哪些方面百度关键词多少钱一个月
  • 肇庆网站推广排名免费发帖论坛大全
  • 石家庄网站建设培训班百度ocpc如何优化
  • 网站外链建设方法手机一键优化
  • 电商网站订烟平台官网湖南网站seo找行者seo
  • markdown做网站模板公司seo是指什么意思
  • 个人网站服务器推荐百度写一篇文章多少钱
  • 企业网站建设论文山东潍坊疫情最新消息
  • 普洱市住房和城乡建设局网站搜索引擎国外
  • 做h5那个网站模板好北京网站提升排名
  • 公司网站建设企业网站宁德seo公司
  • 邢台市委领导班子名单最新西安seo排名外包
  • 网站建设 福州网站运营策划书
  • 网站建设宗旨是什么网络营销价格策略有哪些
  • 电子商务网站建设案例教程百度seo免费推广教程
  • 注册账号自建网站今日军事新闻视频
  • 网站如何做seo的免费的html网站
  • 网站建设单位是什么意思网站关键词排名快速提升
  • 人社网站和微信平台建设方案b站推广网站
  • 中国室内设计师联盟网站网络营销推广公司
  • 论坛网站建设余姚网站制作公司
  • 温州网站建设服务中心搜索引擎营销的手段包括
  • 搭建网站的免费程序市场推广方案模板