В этом примере показано, как создать представление PowerPoint® при помощи MATLAB® API для PowerPoint (API PPT). Пример генерирует эти слайды:
Программно создать представление:
Импортируйте пакет API PPT.
Создайте контейнер представления.
Добавьте слайды.
Добавьте содержимое в слайды.
Сгенерируйте представление.
Классы API PPT принадлежат mlreportgen.ppt
пакет. Импортируйте этот пакет так, чтобы вы не включали имя пакета, когда вы вызываете конструкторов Object API PPT и методы.
import mlreportgen.ppt.*
Создайте mlreportgen.ppt.Presentation
объект содержать представление. В данном примере укажите, что именем выходного файла является myPresentation
и не задавайте шаблон.
ppt = Presentation('myPresentation.pptx');
Поскольку вы не задавали шаблон, API PPT использует шаблон по умолчанию. Шаблон задает размещения понижения по умолчанию и стили. Чтобы создать пользовательский шаблон, смотрите Настроенный Шаблон PowerPoint. Можно заменить стиль по умолчанию, заданный шаблоном при помощи свойств формата и объектов. Смотрите, что Представление Форматирует Подходы.
Чтобы добавить понижение, используйте add
метод и задает размещение понижения, которое доступно в шаблоне. Смотрите Настроенный Шаблон PowerPoint. Этот пример использует эти размещения понижения, которые включены с шаблоном по умолчанию:
Title Slide
Title and Picture
Title and Content
Title and Table
Чтобы добавить содержимое в понижение, используйте replace
метод, чтобы заменить заполнителей содержимого на новое содержимое. Для получения дополнительной информации о добавлении и заменяющий содержимое, смотрите, Добавляют и Содержание презентации Замены. Использовать replace
метод, необходимо задать имя, которое идентифицирует заполнителя в размещении понижения. Например, Title Slide
размещение имеет Title
заполнитель и Subtitle
заполнитель. Для получения информации о том, как найти имена заполнителя содержимого для конкретного размещения понижения, смотрите доступ к Элементам Шаблона PowerPoint.
Чтобы добавить титульный слайд, используйте Title Slide
размещение.
titleSlide = add(ppt,'Title Slide');
Title Slide
размещение имеет этих заполнителей:
Title
Subtitle
Замените Title
заполнитель с текстом заголовка.
replace(titleSlide,'Title','Create Histogram Plots');
Создайте текст заголовка в частях так, чтобы можно было отформатировать histogram
имя функции в различном шрифте.
subtitleText = Paragraph('The '); funcName = Text('histogram'); funcName.Font = 'Courier New'; append(subtitleText,funcName); append(subtitleText,' Function');
Замените Subtitle
заполнитель с текстом, содержавшимся в SubtitleText
.
replace(titleSlide,'Subtitle',subtitleText);
Создайте файл изображения, чтобы использовать для изображения понижения.
x = randn(10000,1);
h = histogram(x);
saveas(gcf,'myPlot_img.png');
Создайте mlreportgen.ppt.Picture
объект от файла изображения.
plot1 = Picture('myPlot_img.png');
Добавьте понижение изображения в представление при помощи Title and Picture
размещение.
pictureSlide = add(ppt,'Title and Picture');
Title and Picture
размещение имеет этих заполнителей:
Title
Picture
Замените Title
заполнитель с текстом заголовка и Picture
заполнитель с plot1
.
replace(pictureSlide,'Title','Histogram of Vector'); replace(pictureSlide,'Picture',plot1);
Содержимое файла изображения копируется в представление, когда представление закрывается. Не удаляйте или перезаписывайте файл изображения, прежде чем представление будет закрыто. Если ваша программа представления создает файлы повторного изображения, дайте им уникальные имена файлов.
Чтобы добавить понижение с текстом, используйте Title and Content
размещение.
textSlide = add(ppt,'Title and Content');
Title and Content
размещение имеет этих заполнителей:
Title
Content
Создайте текст заголовка в частях так, чтобы можно было отформатировать histogram
имя функции в различном шрифте.
titleText = Paragraph('What You Can Do with '); func = Text('histogram'); func.Font = 'Courier New'; append(titleText,func);
Замените Title
и Content
заполнители.
replace(textSlide,'Title',titleText); replace(textSlide,'Content',{'Create histogram plot of x',... 'Specify:',{'Number of bins','Edges of the bins'},... 'Plot into a specified axes'});
Чтобы добавить понижение с таблицей, используйте Title and Table
размещение.
tableSlide = add(ppt,'Title and Table');
The Title and Table
размещение имеет этих заполнителей:
Title
Table
Замените Title
заполнитель.
replace(tableSlide,'Title','Parameters');
Можно использовать несколько подходов, чтобы составить таблицу. Смотрите Создают и Таблицы Формата. Этот пример создает строку таблицы строкой.
Составьте таблицу как mlreportgen.ppt.Table
объект.
Создайте mlreportgen.ppt.TableRow
объект для каждой строки таблицы.
Создайте mlreportgen.ppt.TableEntry
объекты и добавляют их к строкам таблицы.
paramTable = Table(); colSpecs(2) = ColSpec('6in'); colSpecs(1) = ColSpec('3in'); paramTable.ColSpecs = colSpecs; tr1 = TableRow(); tr1.Style = {Bold(true)}; tr1te1Text = Paragraph('Value'); tr1te2Text = Paragraph('Description'); tr1te1 = TableEntry(); tr1te2 = TableEntry(); append(tr1te1,tr1te1Text); append(tr1te2,tr1te2Text); append(tr1,tr1te1); append(tr1,tr1te2); tr2 = TableRow(); tr2te1Text = Paragraph('auto'); tr2te1Text.Font = 'Courier New'; tr2te2Text = Paragraph('The default auto algorithm chooses a bin width to '); append(tr2te2Text,'cover the data range and reveal the shape of the distribution.'); tr2te1 = TableEntry(); tr2te2 = TableEntry(); append(tr2te1,tr2te1Text); append(tr2te2,tr2te2Text); append(tr2,tr2te1); append(tr2,tr2te2); tr3 = TableRow(); tr3te1Text = Paragraph('scott'); tr3te1Text.Font = 'Courier New'; tr3te2Text = Paragraph(' Is optimal if the data is close '); append(tr3te2Text,'to being jointly normally distributed. This rule is '); append(tr3te2Text,'appropriate for most other distributions, as well.'); tr3te1 = TableEntry(); tr3te2 = TableEntry(); append(tr3te1,tr3te1Text); append(tr3te2,tr3te2Text); append(tr3,tr3te1); append(tr3,tr3te2); append(paramTable,tr1); append(paramTable,tr2); append(paramTable,tr3);
Замените Table
заполнитель с paramTable
.
replace(tableSlide,'Table',paramTable);
close(ppt); rptview(ppt);
mlreportgen.ppt.Paragraph
| mlreportgen.ppt.Presentation
| mlreportgen.ppt.Slide
| mlreportgen.ppt.Table
| mlreportgen.ppt.TableEntry
| mlreportgen.ppt.TableRow
| mlreportgen.ppt.Text