【问题标题】:How to get number of slides from uploaded ppt file using Nodejs?如何使用 Nodejs 从上传的 ppt 文件中获取幻灯片数量?
【发布时间】:2016-10-31 18:56:57
【问题描述】:

我们可以从下图提到的文件属性中看到文件的详细信息。

使用 Nodejs 或 Angularjs 以编程方式需要的相同细节。我不认为可以从 Angularjs 完成文件操作。是否可以获得节点中文件的相同信息,我猜shellsjs会支持但我不知道相同的方法存在。

这将在检查 Word 文档、PDF 等以及量角器测试时产生。

【问题讨论】:

标签: javascript angularjs node.js shell protractor


【解决方案1】:

PowerPoint 文件只是一堆压缩后的 XML 文件。因此,您可以解压缩文件以访问您想要的任何内容。例如,我使用 7-zip 提取了一个名为“test.pptx”的空 1-slide 演示文件并得到了这个:

现在,这是app.xml 文件:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties" xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes">
    <TotalTime>0</TotalTime>
    <Words>0</Words>
    <Application>Microsoft Office PowerPoint</Application>
    <PresentationFormat>Widescreen</PresentationFormat>
    <Paragraphs>0</Paragraphs>
    <Slides>1</Slides>
    <Notes>0</Notes>
    <HiddenSlides>0</HiddenSlides>
    <MMClips>0</MMClips>
    <ScaleCrop>false</ScaleCrop>
    <HeadingPairs>
        <vt:vector size="6" baseType="variant">
            <vt:variant>
                <vt:lpstr>Fonts Used</vt:lpstr>
            </vt:variant>
            <vt:variant>
                <vt:i4>3</vt:i4>
            </vt:variant>
            <vt:variant>
                <vt:lpstr>Theme</vt:lpstr>
            </vt:variant>
            <vt:variant>
                <vt:i4>1</vt:i4>
            </vt:variant>
            <vt:variant>
                <vt:lpstr>Slide Titles</vt:lpstr>
            </vt:variant>
            <vt:variant>
                <vt:i4>1</vt:i4>
            </vt:variant>
        </vt:vector>
    </HeadingPairs>
    <TitlesOfParts>
        <vt:vector size="5" baseType="lpstr">
            <vt:lpstr>Arial</vt:lpstr>
            <vt:lpstr>Calibri</vt:lpstr>
            <vt:lpstr>Calibri Light</vt:lpstr>
            <vt:lpstr>Office Theme</vt:lpstr>
            <vt:lpstr>PowerPoint Presentation</vt:lpstr>
        </vt:vector>
    </TitlesOfParts>
    <LinksUpToDate>false</LinksUpToDate>
    <SharedDoc>false</SharedDoc>
    <HyperlinksChanged>false</HyperlinksChanged>
    <AppVersion>16.0000</AppVersion>
</Properties>

如您所见,其中包括幻灯片的数量。换句话说,只需使用您选择的几个可用解压缩 NPM 包解压缩演示文件并读取其中的 XML 文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-24
    • 2023-02-10
    • 2010-12-03
    • 1970-01-01
    • 2011-02-27
    • 1970-01-01
    • 2017-03-15
    • 1970-01-01
    相关资源
    最近更新 更多