Office.OfficeTheme interface
Предоставляет доступ к свойствам цветов темы Office.
С помощью цветов тем Office можно согласовать цветовую схему надстройки с текущей темой Office, выбранной пользователем. Пользователь задает тему в приложении Office с помощью параметров "Учетная>запись " или " Учетная запись>Office". Выбранная тема применяется ко всем приложениям Office. Using Office theme colors is appropriate for mail and task pane add-ins.
Дополнительные сведения о темах Office см. в статье "Изменение внешнего вида Microsoft 365".
Комментарии
Поддерживаемые приложения по платформам
| Office в Интернете | Office для Windows | Office для Mac | Office для iOS | Office для Android | |
|---|---|---|---|---|---|
| Excel | Поддерживается | Поддерживается | Поддерживается | Поддерживается | Недоступно |
| Outlook | Поддерживается | Поддерживается | Поддерживается | Недоступно | Недоступно |
| PowerPoint | Поддерживается | Поддерживается | Поддерживается | Поддерживается | Недоступно |
| Word | Поддерживается | Поддерживается | Поддерживается | Поддерживается | Недоступно |
Важно! В Outlook API темы Office поддерживается начиная с обязательного набора почтовых ящиков 1.14. Она не поддерживается в надстройках Outlook, реализующих активацию на основе событий.
Используется
Примеры
function applyOfficeTheme() {
// Identify the current Office theme in use.
const currentOfficeTheme = Office.context.officeTheme.themeId;
if (currentOfficeTheme === Office.ThemeId.Colorful || currentOfficeTheme === Office.ThemeId.White) {
console.log("No changes required.");
}
// Get the colors of the current Office theme.
const bodyBackgroundColor = Office.context.officeTheme.bodyBackgroundColor;
const bodyForegroundColor = Office.context.officeTheme.bodyForegroundColor;
const controlBackgroundColor = Office.context.officeTheme.controlBackgroundColor;
const controlForegroundColor = Office.context.officeTheme.controlForegroundColor;
// Apply theme colors to a CSS class.
$("body").css("background-color", bodyBackgroundColor);
if (Office.context.officeTheme.isDarkTheme) {
$("h1").css("color", controlForegroundColor);
}
}
Свойства
| body |
Получает цвет фона основной темы Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500"). |
| body |
Получает цвет переднего плана основной темы Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500"). |
| control |
Получает цвет фона элемента управления темой Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500"). |
| control |
Получает цвет переднего плана элемента управления темой Office в виде шестнадцатеричной цветовой триплеты (например, "#FFA500"). |
| fluent |
Получает собственную тему Office host. |
| is |
Возвращается |
| theme |
Получение выбранной темы Office. |
Сведения о свойстве
bodyBackgroundColor
Получает цвет фона основной темы Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500").
bodyBackgroundColor: string;
Значение свойства
string
bodyForegroundColor
Получает цвет переднего плана основной темы Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500").
bodyForegroundColor: string;
Значение свойства
string
controlBackgroundColor
Получает цвет фона элемента управления темой Office в виде шестнадцатеричной цветовой тройки (например, "#FFA500").
controlBackgroundColor: string;
Значение свойства
string
controlForegroundColor
Получает цвет переднего плана элемента управления темой Office в виде шестнадцатеричной цветовой триплеты (например, "#FFA500").
controlForegroundColor: string;
Значение свойства
string
fluentThemeData
Получает собственную тему Office host.
fluentThemeData?: object;
Значение свойства
object
Комментарии
Важно! СвойствоfluentThemeData поддерживается только в настольных клиентах Excel, PowerPoint и Word для Windows.
isDarkTheme
Возвращается true , если выбрана тема Office — черная (темный режим) или темно-серая.
isDarkTheme: boolean;
Значение свойства
boolean
Комментарии
Важно! isDarkTheme Это свойство не поддерживается в Outlook. Чтобы определить текущую тему в Outlook, используйте body*Color свойства and control*Color . Для автоматического обнаружения изменений темы используйте метод addHandlerAsync , чтобы создать обработчик события OfficeThemeChanged .
themeId
Получение выбранной темы Office.
themeId: ThemeId;
Значение свойства
Комментарии
Важно! themeId Это свойство не поддерживается в Outlook. Чтобы определить текущую тему в Outlook, используйте body*Color свойства and control*Color . Для автоматического обнаружения изменений темы используйте метод addHandlerAsync , чтобы создать обработчик события OfficeThemeChanged .