Вы можете перебирать PageElements слайда и извлекать стиль текста из каждого элемента.
Для каждого PageElement
вам необходимо проверить, имеет ли его тип TextRange как одно из его свойств (только Shape и TextCell элементы имеют TextRange
). Если вы попытаетесь извлечь текст из элемента, который не содержит текста, вы можете получить ошибку.
Затем для каждого извлеченного textRange
вы можете выполнить итерацию по его прогонам (различным сегментам содержится в этом тексте, которые имеют другой стиль текста) и извлекает стиль текста для каждого прогона.
Пример кода:
function getTextStyles() {
var slideId = "your-slide-id"; ID of the slide you want to retrieve text style
var presentation = SlidesApp.getActivePresentation();
var slide = presentation.getSlideById(slideId);
var pageElements = slide.getPageElements(); // Get all page elements in slide
pageElements.forEach(function(pageElement) { // Loop through all page elements in slide
if (pageElement.getPageElementType() == "SHAPE") { // Check that current page element is of type "SHAPE"
var textRange = pageElement.asShape().getText(); // Get text belonging to current page element
textRange.getRuns().forEach(function(run) { // Loop through all runs in text
var textStyle = run.getTextStyle(); // Get current row text style
console.log(textStyle);
});
};
});
}
Примечание:
- Приведенный выше код регистрирует
TextStyle
всего текста, принадлежащего Shape
элементам на слайде. Элементы TableCell
также могут содержать текст, поэтому, если вы хотите получить эту информацию, вам придется соответствующим образом изменить сценарий (см. Таблица классов ).
Ссылка: