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

做网站亏本wordpress修改模板技巧

做网站亏本,wordpress修改模板技巧,商服网站模板,手机做网站教程在进行下方操作前,请你先安装 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.yayakq.cn/news/686576/

相关文章:

  • dede手机网站制作青岛网站排名
  • 如何做服装企业商城网站服装网站建设网
  • 购物网站界面设计策划机关作风建设网站
  • 推广网站有效的方法网站开发任职要求
  • 360路由器做网站郑州网站建设郑州网站建设
  • 郑州网站建设智巢网站首页qq在线咨询js
  • 工信部 网站 邮箱商标注册查询官网app
  • 专门做环保设备的网站网站系统开发流程
  • wordpress怎么编辑表格深圳好客站seo
  • 网站系统名称怎么填合肥瑶海区寒假兼职工网站建设
  • 做网站有什么好处html5美食网站
  • 淄博做网站建设公司重庆建设机电有限公司网站
  • 陕西省住房和城市建设厅网站区域名 网站建设公司的销售好做吗
  • 扁平网站 文案ueditor 上传wordpress
  • 纪念币商城网站建设网站在线留言的用途
  • 电子烟网站建设爱山东app下载注册流程
  • 三只松鼠的网站建设的意义达川网站制作
  • 好网站建设公司服务编程学习入门网站
  • 有道网站收录提交入口上海微网站制作设计制作
  • 专门做淘宝客网站合肥最新通知今天
  • 医院网站cmswordpress 主题汉化
  • 网站模板被抄袭怎么办渭南网站建设公司
  • 济宁市建设银行网站wordpress建数据库
  • 利州区住房和城乡建设部网站wordpress打包
  • 网站改版建议策划书关于网络编辑作业做网站栏目新闻的ppt
  • 提升网站的访问速度行业型网站开发
  • 如何在linux服务器上架设网站图片库网站建设报价
  • 如何做问卷调查网站wordpress 自动替换
  • 南宁网站制作wordpress导航横着
  • 站长统计app下载培训学校网站模板