3

Моя цель - убедиться, что код C++, который я вставляю в свою презентацию, компилируется правильно. Поэтому я подумал, что у меня будет каждый пример в отдельном файле (чтобы я мог его скомпилировать) и включил текст из этих файлов в слайды Powerpoint ... Я хочу, чтобы это «включение» было динамичным, поэтому, если я изменю код в файле, слайды будут автоматически обновлены.

Является ли это возможным? Должен ли я использовать LaTeX вместо Powerpoint? Любое другое предложение о том, как решить эту проблему?

Благодарю.

4 ответа4

1

Смотрите этот вопрос. Вам не нужен код для обновления слайда, если вы вставляете его как объект

Powerpoint 2007 со ссылками на внешний контент

1

В PowerPoint вам нужно будет написать макрос, чтобы прочитать текст и обновить слайд.

Пример макроса для чтения текстового файла можно найти здесь:
Читайте в тексте из файла ASCII.

Вам также нужно будет принудительно обновить слайд:

' assuming a reference to the current slide in oSl
ActiveWindow.View.GotoSlide(oSl.SlideIndex)

Эта статья также может быть полезна в качестве примера:
Добавить случайную фразу из текстового файла в текстовое поле на каждом слайде

1

Если вы переименуете файл Powerpoint 2010 .pptx файл .zip , вы можете открыть его через Winzip , 7zip и т.д.

Содержимое слайда записывается в файлы XML именем "...\ppt\slides\slide2.xml" в этой структуре упакованного архива.

Фрагмент из немецкого файла .pptx :

-<a:p>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" err="1" dirty="0"/>
<a:t>A text to change ....</a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" dirty="0"/>
<a:t> </a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" err="1" dirty="0"/>
<a:t>another Text to change</a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" dirty="0"/>
<a:t> </a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" err="1" dirty="0"/>
<a:t>Text ...</a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" dirty="0"/>
<a:t> </a:t>
</a:r>
-<a:r>
<a:rPr lang="de-DE" smtClean="0" err="1" dirty="0"/>
<a:t>Text ...</a:t>
</a:r>
<a:endParaRPr lang="de-DE" smtClean="0" dirty="0"/>
</a:p>

Таким образом, должна быть возможность подготовить файл шаблона .pptx и заменить строки-заполнители, такие как ${Text1234} используя собственный инструмент.

0

Я не знаю, есть ли API, который позволит вам кодировать непосредственно на C++, но есть один для Java: poi.apache.org, так что вы всегда можете заключить его в скрипт для его выполнения.

Тем не менее, LaTex звучит как лучше подходит ИМХО.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .