Чтобы использовать PPT API для добавления или замены содержимого в PowerPoint® презентация:
Настройте шаблон PowerPoint, чтобы сохранить содержимое презентации, которое необходимо добавить или заменить.
Создайте объекты содержимого PPT API, такие как Paragraph, Table, и Picture объекты.
Используйте объекты содержимого PPT API для добавления или замены содержимого презентации.
Добавить и заменить содержимое можно несколькими способами. Для примера можно:
Добавляйте или заменяйте содержимое глобально в презентации или локально на определенном слайде.
Добавить содержимое в текстовое поле.
Замените текстовое поле, таблицу или изображение на содержимое того же типа.
Замените заполнитель содержимым, соответствующим этому заполнителю.
Вы не можете заменить часть абзаца, таблицы или текстового поля. Замените весь объект содержимого.
Можно заменить или добавить содержимое в существующую презентацию PowerPoint без изменения шаблона. Однако использование PPT API требует знания шаблона и объектов слайдов, включая:
Имена хозяев слайдов
Размещения слайдов
Слайд имен заполнителя и объектов содержимого
Имена стилей таблиц
Можно использовать PowerPoint, чтобы добавить заполнители в презентацию, а затем использовать PPT API, чтобы заменить заполнитель содержимым. Чтобы заменить конкретный объект содержимого в презентации, можно использовать PowerPoint, чтобы присвоить уникальное имя объекту содержимого. Затем используйте это имя с PPT API.
Для получения дополнительной информации об использовании шаблонов PowerPoint с программой PPT API, смотрите:
Можно заменить содержимое, задав имя объекта содержимого в replace метод с Slide объект. Для примера в шаблоне PPT API по умолчанию Заголовок Slide размещения имеет объект содержимого под названием Title.
titleSlide = add(slides,'Title Slide'); replace(titleSlide,'Title','This Is My Title');
Чтобы заменить содержимое презентации, можно использовать find метод с Presentation или Slide объект. The find метод ищет объекты содержимого, чьи Name значение свойства соответствует заданному значению поиска. Затем можно использовать индекс возвращаемого элемента, который необходимо обновить.
slides = Presentation('myPresentation'); titleSlide = add(slides,'Title Slide'); contents = find(slides,'Title'); replace(contents(1),'This Is My Title');
Можно использовать эти подходы для добавления или замены текста в презентации.
| Метод спецификации текста | Связанные объекты PPT API |
|---|---|
Задайте текст как часть создания этих объектов. |
|
Добавить текст к абзацу. | Добавьте текст к этим объектам API PPT:
|
Замените | Задайте вектор символов,
|
Добавить или заменить текст в объекте. |
См. раздел Добавление и замена текста в заполнителях. |
Добавить или заменить текстовое поле. | Добавление или замена См. раздел Добавление или замена текста в текстовом поле. |
Вы можете добавить или заменить текст в ContentPlaceholder и a TextBoxPlaceholder, с указанием:
A вектора символов
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);
Если вы создаете презентацию из существующей презентации, таблица из существующей презентации (a template table) представлена 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 размерности объекта, изображение растягивается пропорционально. Если размерности меньше, изображение центрируется.
Если вы создаете презентацию из существующей презентации, картинка из существующей презентации (template 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);