Создание документов OpenXML с использованием JavaScript - PullRequest
7 голосов
/ 30 ноября 2011

У меня есть приложение, которое должно создавать простые документы OpenXML (в частности, презентации PowerPoint) с использованием JavaScript.

Может кто-нибудь подсказать, как начать работу над этим (или даже если это возможно)?Я использовал Microsoft OpenXML SDK для создания чего-то похожего с использованием C #, и мне было интересно, существуют ли какие-либо библиотеки JavaScript с аналогичной функциональностью.

По сути, проблема заключается в том, как создать отдельные документы OpenXML, которые составляют распакованныйДокумент PowerPoint, а затем объедините их вместе, чтобы создать файл PowerPoint (.pptx), который затем можно будет сохранить на своем диске.

Любые идеи приветствуются!

Ответы [ 3 ]

4 голосов
/ 18 декабря 2013

Используйте OpenXML SDK для Javascript

0 голосов
/ 03 марта 2014

ИСПОЛЬЗОВАНИЕ OPEN XML SDK . Вы можете запустить его на узле, и за 32 секунды он создает 2000 документов. Или вы можете запустить его в браузере.

0 голосов
/ 11 июня 2012

Очевидно, что такие операции, как архивирование / разархивирование документа или сохранение документа, не могут быть выполнены на стороне клиента и с использованием чистого JavaScript.

Однако, если вы хотите делать такие вещи, я считаю, что существуют пакеты Linux, которые принимают строки в качестве входных данных и дают вам готовый документ Office для вывода.

Если вам неудобны пакеты Linux, предположим, что вы хотите сохранить это как документ Word 2007:

<?xml version="1.0" encoding="utf-8"?> 
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"> 
    <w:body> 
        <w:p> 
            <w:pPr> 
            <w:pStyle w:val="MyHeading1" /> 
            </w:pPr> 
            <w:r> 
            <w:t>This is Heading</w:t> 
            </w:r> 
        </w:p> 
    </w:body> 
</w:document>

Вы можете построить эту строку на стороне клиента. затем отправьте его на сервер через AJAX, и пусть ваш сервер справится с этим. В частности, я несколько раз использовал эти API . пусть PHP справится с этим. сохранить результат где-нибудь или заставить браузер клиента загрузить его (поток результатов)

...