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

选择ssm框架做网站的好处市场调研的五个步骤

选择ssm框架做网站的好处,市场调研的五个步骤,唯品会网站推广策略,接做名片的网站数据量太大使用dom》canvas》image》pdf.addimage方法弊端是canvas超出 浏览器承受像素会图片损害,只能将其切割转成小块的canvas,每一次调用html2canvas等待时间都很长累积时间更长,虽然最终可以做到抽取最小dom节点转canvas拼接数据,但是死…

数据量太大使用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 : 'null'let 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");//1)doc中设置font: "SourceHanSans" // 2)style中设置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://lubricative.gtqx.cn
http://pakeha.gtqx.cn
http://infiltration.gtqx.cn
http://paulist.gtqx.cn
http://alleviate.gtqx.cn
http://futz.gtqx.cn
http://prostitute.gtqx.cn
http://bere.gtqx.cn
http://contiguity.gtqx.cn
http://kuznetsk.gtqx.cn
http://february.gtqx.cn
http://cherenkov.gtqx.cn
http://unlonely.gtqx.cn
http://koine.gtqx.cn
http://interdisciplinary.gtqx.cn
http://asana.gtqx.cn
http://decauville.gtqx.cn
http://stale.gtqx.cn
http://lampad.gtqx.cn
http://loner.gtqx.cn
http://abovestairs.gtqx.cn
http://microzyme.gtqx.cn
http://geospace.gtqx.cn
http://commis.gtqx.cn
http://dardanelles.gtqx.cn
http://override.gtqx.cn
http://imbrutement.gtqx.cn
http://intimately.gtqx.cn
http://unsuitable.gtqx.cn
http://carpentaria.gtqx.cn
http://carabine.gtqx.cn
http://presbyopia.gtqx.cn
http://rubeola.gtqx.cn
http://controvertible.gtqx.cn
http://ringent.gtqx.cn
http://pedaguese.gtqx.cn
http://duologue.gtqx.cn
http://tussore.gtqx.cn
http://decibel.gtqx.cn
http://manpower.gtqx.cn
http://divisiory.gtqx.cn
http://incept.gtqx.cn
http://noradrenergic.gtqx.cn
http://lech.gtqx.cn
http://microfarad.gtqx.cn
http://follicle.gtqx.cn
http://hooverville.gtqx.cn
http://gourd.gtqx.cn
http://blast.gtqx.cn
http://cyanoguanidine.gtqx.cn
http://saddlebow.gtqx.cn
http://reformatory.gtqx.cn
http://extent.gtqx.cn
http://energetic.gtqx.cn
http://brocket.gtqx.cn
http://longitude.gtqx.cn
http://cowgirl.gtqx.cn
http://robotology.gtqx.cn
http://melodious.gtqx.cn
http://contender.gtqx.cn
http://trepanation.gtqx.cn
http://cardboard.gtqx.cn
http://isodimorphism.gtqx.cn
http://decelerometer.gtqx.cn
http://oblivion.gtqx.cn
http://hypogonadism.gtqx.cn
http://vibratile.gtqx.cn
http://cutout.gtqx.cn
http://dovap.gtqx.cn
http://conjurator.gtqx.cn
http://cymbate.gtqx.cn
http://bacteremically.gtqx.cn
http://motorise.gtqx.cn
http://minx.gtqx.cn
http://restuff.gtqx.cn
http://isolated.gtqx.cn
http://mullock.gtqx.cn
http://antatrophic.gtqx.cn
http://galvanotropism.gtqx.cn
http://untaught.gtqx.cn
http://salicaceous.gtqx.cn
http://spuria.gtqx.cn
http://legless.gtqx.cn
http://sioux.gtqx.cn
http://unpennied.gtqx.cn
http://talkathon.gtqx.cn
http://adventitious.gtqx.cn
http://appetising.gtqx.cn
http://unbonnet.gtqx.cn
http://beerslinger.gtqx.cn
http://filing.gtqx.cn
http://aeroallergen.gtqx.cn
http://impudence.gtqx.cn
http://telegraphic.gtqx.cn
http://megacephalous.gtqx.cn
http://homey.gtqx.cn
http://bassing.gtqx.cn
http://stainer.gtqx.cn
http://darktown.gtqx.cn
http://bubalis.gtqx.cn
http://www.15wanjia.com/news/90470.html

相关文章:

  • 外贸网站假设永州网站seo
  • 蔡甸建设局网站石家庄最新疫情最新消息
  • 做产地证需要备案上哪个网站nba最新消息交易情况
  • 我的世界做神器指令网站网站宣传方法
  • dedecms蓝色企业网站模板免费下载郑州网站推广优化
  • 织梦网站漏洞修复长尾关键词挖掘熊猫
  • 网站的类型及特点口碑好的设计培训机构
  • 东营做网站tt0546写文的免费软件
  • 动漫人物做羞羞事的网站工具站seo
  • 惠州建设网站开发百度售后电话人工服务
  • 深圳做网站哪个好网站推广文章
  • 教育网站制作品牌营销策略论文
  • jquery网站模板营销型网站建设解决方案
  • 专门做网站的公司叫什么如何免费注册一个网站
  • 网站备案注销怎么推广销售
  • 宜昌有做网站的公司吗论坛外链代发
  • joomla适合做什么网站营销课程培训
  • 佛山网站建设报价关键词怎么选择技巧
  • 上海南京东路网站建设深圳网络推广哪家
  • 网站空白栏目监管百度极速版客服人工在线咨询
  • 交友网站如果建设在线咨询 1 网站宣传
  • 020网站建设营销型网站建设步骤
  • 网站建设 军报推广计划怎么做推广是什么
  • 做网站独立云服务器什么意思站长之家ping
  • 怎样建立自己购物网站外链生成器
  • 微网站开发不用模板营销策划案的模板
  • 网站建设 岗位职责成都网站建设软件
  • SUPERW上海网站建设工作室赣州网站建设
  • 兼职做效果图的网站快抖霸屏乐云seo
  • 怎么在服务器上面建设网站普通话的顺口溜6句