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

做网站 长wordpress header导航

做网站 长,wordpress header导航,网站背景设计,三合一网站系统数据量太大使用dom》canvas》image》pdf.addimage方法弊端是canvas超出 浏览器承受像素会图片损害#xff0c;只能将其切割转成小块的canvas,每一次调用html2canvas等待时间都很长累积时间更长#xff0c;虽然最终可以做到抽取最小dom节点转canvas拼接数据#xff0c;但是死…数据量太大使用dom》canvas》image》pdf.addimage方法弊端是canvas超出 浏览器承受像素会图片损害只能将其切割转成小块的canvas,每一次调用html2canvas等待时间都很长累积时间更长虽然最终可以做到抽取最小dom节点转canvas拼接数据但是死卡 jspdf提供了不需要操作dom的方法 Global - Documentation 使用line方法和text方法可以通过传递线坐标和文字位置在pdf页上画线和文字组成表格 function getStrLen(cItem, strLen) {let str typeof cItem string || typeof cItem number ? cItem : nulllet len Math.ceil(str.length / strLen)if (len 1) {return str}str String(str)let strn for (let i 0; i len; i) {strn strn str.substring(i * strLen, (i 1) * strLen) \n}return strn }async function downPDF(list, columns) {// 1in 2.54cm 25.4 mm 72pt 6pclet tablePdf null //绘制表格的参数let cardTop 10, cardLeft 7, textLeft 9, textTop 14, oneColumnNum 35, oneRowNum 7, oneCellWidth 28, oneCellHeight 8, oneStrLen 5, pdfWidth 203, pdfHeight 290, strLen 8let endPageNum 0 //表格数据的整理 //整理格式成一个二维数组第一层以列为单个元素元素是整列的值组成的数组let testList columns[0].childrenlet propList testList.map((item) {return { prop: item.props.prop, label: item.props.label }})let dataList []propList.forEach((item, index) {let cArr []cArr.push(item.label)list.forEach((cItem, cIndex) {cArr.push(cItem[item.prop])})dataList.push(cArr)})console.log(dataList)//处理好表格数据的二维数组配置pdf对象tablePdf new jsPDF(p, mm, a4); //解决中文乱码tablePdf.addFont(/fonts/SourceHanSansCN-Normal.ttf, SourceHanSans, normal)tablePdf.setFont(SourceHanSans);//1doc中设置font: SourceHanSans // 2style中设置tablePdf.setLineWidth(0.1)tablePdf.setFontSize(8)tablePdf.line(cardLeft, cardTop, pdfWidth, cardTop);let columnPages Math.ceil(dataList.length / oneRowNum) 1let rowPages Math.ceil(dataList[0].length / oneColumnNum) 1let currentData []for (let i 1; i columnPages; i) { //横向分页let currentColumnData dataList.slice((i - 1) * oneRowNum, i * oneRowNum) //纵向分页for (let rowInddex 1; rowInddex rowPages; rowInddex) {currentData currentColumnData.map((item, index) {return item.slice((rowInddex - 1) * oneColumnNum, rowInddex * oneColumnNum)})currentData.forEach((item, index) {item.forEach((cItem, cIndex) {cItem getStrLen(cItem, strLen)//填文字超过长度换行tablePdf.text(cItem, textLeft index * oneCellWidth, textTop cIndex * oneCellHeight, left)//画一次横线if (index currentData.length - 1) {tablePdf.line(cardLeft, cardTop cIndex * oneCellHeight, pdfWidth, cardTop cIndex * oneCellHeight);//画最后一条横线if (cIndex item.length - 1) {tablePdf.line(cardLeft, cardTop (cIndex 1) * oneCellHeight, pdfWidth, cardTop (cIndex 1) * oneCellHeight);endPageNum item.lengthlet ks (pdfHeight - cardTop) / oneColumnNumfor (let l 0; l oneRowNum 1; l) {tablePdf.line(cardLeft l * oneCellWidth, cardTop, cardLeft l * oneCellWidth, endPageNum * ks cardTop);}}}})});if (rowInddex 1 ! rowPages) {tablePdf.addPage();}}if (i 1 ! columnPages) {tablePdf.addPage();}}tablePdf.save(dd.pdf) }数组datalist结构 效果
http://www.hkea.cn/news/14486523/

相关文章:

  • 手机app制作公司郑州seo优化seo外包
  • 汕头企业网站模板建站网站建设怎么建好
  • 高端网站建设服务商个人主页是重要的营销手段
  • 深圳龙华建网站公司湛江网站建设哪家优惠多
  • 展示型手机网站国际知名设计公司收入
  • 服务专业的网站制作服务一个空间怎么放两个网站吗
  • 朔州公司做网站wordpress 在线qq
  • 江苏省建设工程网站网站目录权限设置 user
  • 网络推广是干嘛的可以做吗济南网站优化seo
  • 通辽做网站制作广州网络推广平台
  • 接网站开发项目南京小程序建设
  • 黄金网站app免费视频下载网站如何做排名
  • 网站的网页wordpress的固定链接如何设置
  • 网站建设和网页设计是不是一样男女生做内个的网站
  • 网站建设 验证码外贸人才网官网
  • 网站静态化对seo装修设计网站源码
  • 旅游网站哪个好网站备案对网站负责人的要求
  • 赤壁市药监局网站建设方案百度会收录双域名的网站么
  • 网站开发人员岗位描述购物平台推广方案
  • 网站开发 源码创建网站目录结构应遵循的方法
  • 网站建设基本流程费用服务比较好的网页传奇
  • 5个免费安全的资源网站学校网站模板注意事项
  • 网站标题大全ghost卸载wordpress
  • 网站开发框架拓扑代运营公司排行榜
  • 物价局网站建设情况汇报c 网站开发平台
  • 东莞 网站建设wordpress企业cms开发
  • 网站建设方案 百度文库老虎淘客系统可以做网站吗
  • 做化验的网站wordpress需要钱吗
  • 盐山县做网站网站开发的响应式和兼容性问题
  • 清徐县建设局网站腾讯云 门户网站建设