首页 > 其他分享 >pdf和ppt页数和xlsxStyle jszip3.0兼容

pdf和ppt页数和xlsxStyle jszip3.0兼容

时间:2023-03-31 17:25:38浏览次数:48  
标签:case jszip3.0 return res file ppt xlsxStyle type const

    async countPptxSlides(file) {       const zip = new JSZip()       const zipFile = await zip.loadAsync(file)       const presentationEntry = Object.values(zipFile.files).find(file => file.name === 'ppt/presentation.xml')       if (!presentationEntry) {         throw new Error('Failed to find presentation.xml file in PPTX archive')       }       const presentationXml = await zipFile.file(presentationEntry.name).async('string')       const parser = new DOMParser()       const presentationDoc = parser.parseFromString(presentationXml, 'application/xml')       const slideCount = presentationDoc.getElementsByTagName('p:sldId').length       this.form.cpage = slideCount     },     async countPdfPages(file) {       const pdfBytes = await file.arrayBuffer()       const pdfDoc = await PDFDocument.load(pdfBytes)       const pageCount = pdfDoc.getPageCount()       this.form.cpage = pageCount     },   function write_zip_type(wb, opts) {   var o = opts||{};   style_builder  = new StyleBuilder(opts);
  var z = write_zip(wb, o);   try {     switch(o.type) {       case "base64": return z.generate({type:"base64"});       case "binary": return z.generate({type:"string"});       case "buffer": return z.generate({type:"nodebuffer"});       case "file": return _fs.writeFileSync(o.file, z.generate({type:"nodebuffer"}));       default: throw new Error("Unrecognized type " + o.type);     }   } catch (error) {     switch(o.type) {       case "base64": return z.generateAsync({type:"base64"}).then(res => {         // console.log(res)         return res       });       case "binary": return z.generateAsync({type:"string"}).then( res => {         // console.log(res)         return res       });       case "buffer": return z.generateAsync({type:"nodebuffer"}).then( res => {         // console.log(res)         return res       });       case "file": return z.generateAsync({type:"nodebuffer"}).then( res => {         // console.log(res)         return _fs.writeFileSync(o.file,res)         // return res       });       default: throw new Error("Unrecognized type " + o.type);     }   } }

标签:case,jszip3.0,return,res,file,ppt,xlsxStyle,type,const
From: https://www.cnblogs.com/zylzh/p/17276897.html

相关文章

  • 秀米新技能:如何在秀米推文中上传附件?如Word、Excel、PPT、PDF等
    发表公众号推文的时候,有不少人使用秀米作为公众号的图文排版工具。作为深受运营人喜爱的一款排版工具,排版案例拿来即用,方便了不少我们这种爱偷懒的运营人。在实际的运营工作中,我们经常需要在公众号发表一些带有附件的文章,比如岗位需求表、报名申请表、成绩公示表、比赛晋级名单、......
  • 谷歌Chrome浏览器内直接打开编辑保存Office Word、Excel、PPT 文档,可离线部署!
    谷歌Chrome经过开发团队不断优化,凭借运行界面简单,打开速度最快及扩展插件众多,Chrome已经成为了世界上最受欢迎的浏览器。不过有一点非常可惜,由于微软Office不是开源程序,所以Chrome一直无法直接打开微软Office文档。虽然后来有一些国内厂商通过调用微软免费开源的ActiveX控件DsoFr......
  • 制作Macbook和苹果手机模型放在PPT里展示得方法
    需要如下素材放进PPT里,用来展示我们得客户端和移动端得显示,最终效果如下: 首先对于移动端得苹果手机展示得最终效果如下  Surfacepro截全屏快捷键是Fn+Space 1......
  • [PPT]来自instagram创始人的分享:如何成为一家十亿美元公司
    在Facebook花费10亿美元巨资收购instagram后,网上出现了许多关于这一收购的报道及解析。但无论如何,这些更多的只是外人的猜测而已。昨天晚上,在Airbnb举办的一个内部员工技......
  • 光伏电池PV建模,基于Boost Buck电路实现最大功率追踪MPPT
    光伏电池PV建模,基于BoostBuck电路实现最大功率追踪MPPT,包括扰动观察法,电导增量法,改进型电导增量法,滑模变结构法等控制算法,模型仿真效果较好,适合借鉴学习。图片为模型图,功......
  • ppt制作
    【PPT代制作】PPT美化PPT设计分类现成可选1、毕业答辩(160种可选)2、扁平风格(79种可选)3、产品发布(20种可选)4、创意风格(60种可选)5、个人简历(67种可选)6、工作......
  • PPT如何保存高分辨率高清图片:另存为 “增强型windows元文件” emf格式
    第一步:保存图片时使用格式“增强型windows元文件”需要较高版本ppt版本,保存图片时使用格式“增强型windows元文件”,输出的emf文件分辨率相当于当前页面尺寸下的600d......
  • OpenXML-SDK 操作Word,PPT,提取文字
    今天跟大家分享一款插件,OpenXML-SDK实现对Word,PPT的操作。今天仅介绍如何利用这个组件,从文件中提取文字。OpenXML-SDK有个缺陷,不支持跨平台,即只能部署在windows系统首......
  • 利用 Java POI 操作PPT示例
    [size=large][color=red]使用POI操作PPT文档[/color][/size][url]http://zyplaiai.iteye.com/blog/778547[/url]1)如果是创建新的PPT文档,直接使用S......
  • python使用WPS合并PPT文件
    直接上代码:importcomtypes.client#打开WPS应用程序app=comtypes.client.CreateObject("KWPP.Application")#打开第一个PPT文件prs1=app.Presentations.Open(os.pat......