Создание Powerpoint с использованием JavaScript
JavaScript не может создавать файлы локально в файловой системе клиентов. Тем не менее, мне интересно, если можно каким-то образом создать Powerpoint MIME на веб-странице (div или iframe) из некоторого JSON, а затем позволить UserAgent выяснить, что это Powerpoint в ожидании того, что UserAgent предложит пользователю выбор для отображения его в качестве презентации PowerPoint?
Примечание. Идея здесь состоит в том, чтобы иметь возможность взять некоторый JSON и сделать презентацию PowerPoint без необходимости делать запрос на сервер для создания файла Powerpoint.
Ответы
Ответ 1
Вы можете создать ссылку с URL-адресом данных с типом Powerpoint MIME:
data:ms-powerpoint;base64,aGVsbG8gd... // base64-encoded file
Запустите свою логику, чтобы создать двоичный файл Powerpoint, затем base64-encode it (например, с btoa
), а затем динамически сгенерировать ссылку или перенаправить window.location
в URI данных.
var binaryPPFile = createPowerpointFromJSON(sourceJSON);
window.location = "data:ms-powerpoint;base64," + btoa(binaryPPFile);