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

佛山如何网站建设在哪里做北京鸿讯泰德网站建设

佛山如何网站建设在哪里做,北京鸿讯泰德网站建设,微网站设置,怎样进入公众号平台登录上篇文章中提到关于xlsx改造冻结窗格的代码#xff0c;我是怎么知道要加pane的呢#xff0c;加下来就把我的心路历程记录一下。 我改造之前也是没有头绪的#xff0c;我网上查了很多#xff0c;只告诉我如何使用#xff0c;但源码里没有针对!freeze的处理#xff0c;所以…上篇文章中提到关于xlsx改造冻结窗格的代码我是怎么知道要加pane的呢加下来就把我的心路历程记录一下。 我改造之前也是没有头绪的我网上查了很多只告诉我如何使用但源码里没有针对!freeze的处理所以即便把!freeze传过去也是无用的。于是我想既然js可以实现excel的导出那应该有办法能实现只是原作者写到pro版里了那么我能不能加上呢如何加呢 我先贴上部分代码 // 冻结第一行和第一列worksheet[!freeze] {xSplit: 0, //冻结列ySplit: 1, //冻结行// topLeftCell: A2, //在未冻结区域的左上角显示的单元格默认为第一个未冻结的单元格state: frozen}var wbout XLSX.write(workbook, {bookType: xlsx,bookSST: false,type: binary}) 第一步 首先我打印了wbout发现是一个二进制文件然后找到xlsx.write的write // 部分代码 ... XLSX.parse_zip parse_zip; XLSX.read readSync; //xlsread XLSX.readFile readFileSync; //readFile XLSX.readFileSync readFileSync; XLSX.write writeSync; XLSX.writeFile writeFileSync; XLSX.writeFileSync writeFileSync; XLSX.writeFileAsync writeFileAsync; XLSX.utils utils; XLSX.writeXLSX writeSyncXLSX; XLSX.writeFileXLSX writeFileSyncXLSX; XLSX.SSF SSF; 第二步 然后找到writeSync方法 -》 write_zip_type -》 write_zip -》write_zip_xlsx function write_zip(wb, opts) {console.log(write_zip, opts.bookType)if(opts.bookType ods) return write_ods(wb, opts);if(opts.bookType numbers) return write_numbers_iwa(wb, opts);if(opts.bookType xlsb) return write_zip_xlsxb(wb, opts);return write_zip_xlsx(wb, opts); } 关键点就在write_zip_xlsx方法中 在write_zip_xlsx方法中我们找到xl/worksheets/sheet的下面的write_ws_xml方法 write_ws_xml方法返回的就是一段字符串就是我们要导出的excel的内容 // 部分代码 ... var wsrels {!id:{}};var ws wb.Sheets[wb.SheetNames[rId-1]];var _type (ws || {})[!type] || sheet;switch(_type) {case chart:/* falls through */default:f xl/worksheets/sheet rId . wbext;zip_add_file(zip, f, write_ws_xml(rId-1, opts, wb, wsrels));ct.sheets.push(f);add_rels(opts.wbrels, -1, worksheets/sheet rId . wbext, RELS.WS[0]);} 第三步 这里我们在write_zip_xlsx方法的xl/worksheets/sheet的下面打印一下console.log(write_ws_xml(rId-1, opts, wb, wsrels)) 这里我们可以看见返回的是一个类似xml格式的字符串 这里我加上!freeze代码之后的打印结果没加之前是没有pane xSplit0 ySplit1 topLeftCellundefined activePaneundefined statefrozen/这串字符的 我们就想了excel的原理是不是就是xml格式呢我怎么往里面添加上它能识别的标签呢 带着疑问我查找了下面的资料 Excel2007格式分析和XML解析 Excel文件的本质一个包含XML、图片文件的压缩文件夹-压缩文件-上犹电脑信息网 根据资料我试着本地新建一个excel文件分别一次设置冻结窗口一个不设置然后将文件后缀改为zip、解压得到的目录和资料中的一致对比两个xl/worksheets/sheet1.xml的区别发现是pane标签知道冻结窗口的标签了接下来就简单了我们就可以添加下面的代码了 //部分代码 ... // 冻结窗口var pane null;var freeze ws[!freeze];console.log(freeze)if (freeze ! undefined) {pane writextag(pane, null, {xSplit: freeze.xSplit, // 冻结列ySplit: freeze.ySplit, // 冻结行topLeftCell: freeze.topLeftCell, // 在未冻结区域的左上角显示的单元格默认为第一个未冻结的单元格activePane: freeze.activePane,state: freeze.state || frozen})}return writextag(sheetViews, writextag(sheetView, pane, sview), {}); 以上就是完整的流程改造冻结窗口只是示例通过类似的过程我们可以改造成我们想要的其他格式。
http://www.w-s-a.com/news/865367/

相关文章:

  • 深圳高端网站设计免费的关键词优化软件
  • 视频网站公司沈阳网站建设服务
  • 网站全屏代码做网站必须用对方服务器
  • 网站速度慢wordpressssl正式申请后wordpress
  • 那个网站做玉石最专业西瓜创客少儿编程加盟
  • 备案时的网站建设方案书免费软件库
  • 惠州外贸网站建设网站模板 兼容ie8
  • 南京淄博网站建设方案php网站开发实训感想
  • 网站设计的含义只做恐怖片的网站
  • 网站改版方案ppt室内装修公司简介
  • 做色网站wordpress twenty ten
  • 马鞍山建设工程监督站建管处网站免费的海报模板网站
  • 类似百度的网站移动端的网站怎么做的
  • 网站开发需要什么文凭网站分析的优劣势
  • 海尔网站建设不足之处山东网站营销
  • 楚雄 网站建设广告设计一般人能学吗
  • 热搜榜排名前十山东seo多少钱
  • 衡水哪有建网站的吗企业信息系统英文
  • 有模板怎么建站wordpress媒体库图片路径
  • 怎么做网站h汉狮企业网站营销的实现方式
  • 新津县建设局网站怎么做区块链网站
  • 网站设计与制作是什么专业广州优化网站
  • 腾讯有做淘宝客网站吗网站开发包
  • 网站整体营销方案网站建设百度贴吧
  • 宣传式网站养生网站模板
  • 临猗网站建设天津做网站哪家服务好
  • 郑州做网站九零后用织梦建设网站的步骤
  • 莱芜网站优化加徽信xiala5江都网站制作
  • 网站开发工具书焦作网站开发公司电话
  • 石狮网站建设报价百度爱采购怎么优化排名