Чтобы использовать PPT API для добавления или замены содержимого презентации PowerPoint ®:
Настройте шаблон PowerPoint для хранения содержимого презентации, которое требуется добавить или заменить.
Создание объектов содержимого PPT API, таких как Paragraph, Table, и Picture объекты.
Используйте объекты содержимого PPT API для добавления или замены содержимого презентации.
Добавить и заменить содержимое можно несколькими способами. Например, можно:
Добавьте или замените содержимое глобально в презентации или локально на определенном слайде.
Добавление содержимого в текстовое поле.
Замените текстовое поле, таблицу или рисунок содержимым того же типа.
Замените местозаполнитель содержимым, соответствующим этому местозаполнителю.
Нельзя заменить часть абзаца, таблицы или текстового поля. Замените весь объект содержимого.
Можно заменить или добавить содержимое в существующую презентацию PowerPoint без изменения шаблона. Однако использование PPT API требует знания шаблонов и объектов слайдов, включая:
Имена шаблонов слайдов
Имена макетов слайдов
Местозаполнитель слайдов и имена объектов содержимого
Имена стилей таблиц
Можно использовать PowerPoint для добавления местозаполнителей в презентацию, а затем использовать PPT API для замены местозаполнителя содержимым. Чтобы заменить определенный объект содержимого в презентации, можно использовать PowerPoint для присвоения уникального имени объекту содержимого. Затем используйте это имя с API PPT.
Дополнительные сведения об использовании шаблонов PowerPoint с программой PPT API см. в разделе:
Можно заменить содержимое, указав имя объекта содержимого в replace метод с помощью Slide объект. Например, в стандартном шаблоне PPT API макет слайда заголовка имеет объект содержимого с именем Title.
titleSlide = add(slides,'Title Slide'); replace(titleSlide,'Title','This Is My Title');
Для замены содержимого презентации можно использовать find метод с помощью Presentation или Slide объект. find метод выполняет поиск объектов содержимого, Name значение свойства соответствует указанному значению поиска. Затем можно использовать индекс возвращаемого элемента, который требуется обновить.
slides = Presentation('myPresentation'); titleSlide = add(slides,'Title Slide'); contents = find(slides,'Title'); replace(contents(1),'This Is My Title');
Эти подходы можно использовать для добавления или замены текста в презентации.
| Методика спецификации текста | Связанные объекты PPT API |
|---|---|
Укажите текст как часть создания этих объектов. |
|
Добавление текста к абзацу. | Добавьте текст к этим объектам PPT API:
|
Заменить | Укажите символьный вектор,
|
Добавление или замена текста в объекте-местозаполнителе. |
См. раздел Добавление и замена текста в местозаполнителях. |
Добавление или замена текстового поля. | Добавление или замена См. раздел Добавление или замена текста в текстовом поле. |
Можно добавить или заменить текст в ContentPlaceholder и TextBoxPlaceholder, указание:
Символьный вектор
A Paragraph объект
Массив ячеек символьных векторов или Paragraph объекты или комбинация символьных векторов и Paragraph объекты. Внутренний массив ячеек определяет элементы внутреннего списка (с отступом).
Макет слайда определяет, будет ли текст отображаться в виде абзацев, маркированного списка или нумерованного списка.
import mlreportgen.ppt.* name1 = 'before'; slides = Presentation(name1); add(slides,'Comparison'); replace(slides, 'Left Content', 'dummy content'); replace(slides, 'Right Content', 'dummy content'); close(slides); name2 = 'after'; slides = Presentation(name2, name1); lefts = find(slides, 'Left Content'); rights = find(slides, 'Right Content'); para = replace(lefts(1), 'Left item in the list' ); para.Italic = true; para.FontColor = 'green'; replace(rights(1), { ... 'Right List item', ... { 'Inner right list item', 'Other inner right list item' }... 'Right List item', ... }); close(slides); if ispc winopen(slides.OutputPath); end
Текстовое поле на слайде - это поле, в которое можно добавить текст. Можно программно добавлять или заменять содержимое текстового поля в презентации.
Создать TextBox объект. Укажите местоположение и ширину текстового поля.
Добавление текста с помощью add с помощью TextBox объект.
Добавить TextBox объект для представления с помощью add метод с помощью Presentation объект или add метод с помощью Slide объект.
Например:
import mlreportgen.ppt.* slides = Presentation('myPresentation.pptx'); titleSlide = add(slides,'Title Slide'); tb = TextBox(); tb.X = '2in'; tb.Y = '2in'; tb.Width = '5in'; add(tb,'Text for text box'); add(titleSlide,tb); close(slides);
Для добавления или замены таблицы в презентации используйте один из следующих подходов:
Добавление таблицы непосредственно на слайд.
Замените местозаполнитель из слайд-макета таблицей. Например, добавьте слайд с помощью Title and Content или Title and Table и замените содержимое или местозаполнитель таблицы на таблицу.
Замените таблицу шаблона из презентации шаблона другой таблицей.
Создание mlreportgen.ppt.Table и добавьте его на слайд.
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); tableSlide = add(ppt,'Blank'); magicTable = Table(magic(5)); magicTable.X = '3in'; magicTable.Y = '5in'; add(tableSlide,magicTable); close(ppt);
Таблицу, уже добавленную на слайд, можно заменить с помощью replace способ. Например:
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); tableSlide = add(ppt,'Blank'); magicTable = Table(magic(5)); add(tableSlide,magicTable); newTable = Table(magic(4)); replace(magicTable,newTable); close(ppt);
Можно заменить местозаполнитель таблицы из листа слайдов. Например, добавьте слайд с помощью Title and Table макет. Местозаполнитель таблицы представлен mlreportgen.ppt.TablePlaceholder объект. Чтобы заменить заполнитель таблицы, используйте replace способ TablePlaceholder объект.
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); tableSlide = add(ppt,'Title and Table'); table1 = Table(magic(9)); tblplaceholderObj = find(tableSlide,'Table'); replace(tblplaceholderObj,table1); close(ppt);
Если Вы создаете презентацию от существующего представления, стол от существующего представления (стол шаблона) представлен mlreportgen.ppt.TemplateTable объект. Можно изменить положение, ширину и высоту таблицы шаблона, задав свойства объекта. Также можно изменить разметку XML таблицы шаблона. Чтобы заменить таблицу шаблонов, используйте replace способ TemplateTable объект. Например, предположим, что вы создаете презентацию из существующей презентации myPresentation , который имеет слайд с 'Title and Table' макет. Следующий код заменяет таблицу шаблона другой таблицей.
import mlreportgen.ppt.* ppt = Presentation('myNewPresentation.pptx','myPresentation.pptx'); open(ppt); slide1 = ppt.Children(1); templateTableObj = find(slide1,'Table'); replace(templateTableObj,Table(magic(4))); close(ppt);
Чтобы добавить или заменить изображение в презентации, используйте один из следующих подходов:
Добавление рисунка непосредственно на слайд.
Замените местозаполнитель из слайд-макета изображением. Например, добавьте слайд с помощью Title and Content или Title and Picture и замените содержимое или местозаполнитель изображения изображением.
Замените рисунок шаблона из презентации шаблона другим рисунком.
Создание mlreportgen.ppt.Picture и добавьте его на слайд.
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); pictureSlide = add(ppt,'Blank'); plane = Picture(which('b747.jpg')); plane.X = '2in'; plane.Y = '2in'; plane.Width = '5in'; plane.Height = '2in'; add(pictureSlide,plane); close(ppt);
Вы можете заменить рисунок, который уже добавлен на слайд, с помощью replace способ. Например:
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); pictureSlide = add(ppt,'Blank'); plane = Picture(which('b747.jpg')); plane.X = '2in'; plane.Y = '2in'; add(pictureSlide,plane); peppers = Picture(which('peppers.png')); replace(plane,peppers); close(ppt);
Можно заменить местозаполнитель рисунка изображением. Например, добавьте слайд с помощью Title and Picture макет. Местозаполнитель рисунка представлен символом mlreportgen.ppt.PicturePlaceholder объект. Чтобы заменить местозаполнитель рисунка, используйте replace способ PicturePlaceholder объект.
import mlreportgen.ppt.* ppt = Presentation('myPresentation.pptx'); open(ppt); tableSlide = add(ppt,'Title and Picture'); plane = Picture(which('b747.jpg')); plane.X = '2in'; plane.Y = '2in'; picplaceholderObj = find(tableSlide,'Picture'); replace(picplaceholderObj,plane); close(ppt);
PowerPoint корректирует размеры рисунка в соответствии с местозаполнителем рисунка. Если размеры местозаполнителя изображения больше Picture размеры объекта, изображение растягивается пропорционально. Если размеры меньше, изображение центрируется.
При создании презентации из существующей презентации изображение из существующей презентации (шаблонное изображение) представляется как mlreportgen.ppt.TemplatePicture объект. Можно изменить положение, ширину и высоту рисунка шаблона, задав свойства объекта. Можно также изменить разметку XML рисунка шаблона. Чтобы заменить рисунок шаблона, используйте replace способ TemplatePicture объект. Например, предположим, что вы создаете презентацию из существующей презентации myPresentation , который имеет слайд с 'Title and Picture' макет. Следующий код заменяет рисунок шаблона другим рисунком.
import mlreportgen.ppt.* ppt = Presentation('myNewPresentation.pptx','myPresentation.pptx'); open(ppt); slide1 = ppt.Children(1); templateTableObj = find(slide1,'Picture'); replace(templateTableObj,Picture(which('peppers.png'))); close(ppt);