Récupérer et mettre à jour les propriétés d’affichage de la présentation en Python via Java

Introduction

La vue normale comprend trois zones de contenu : la diapositive elle‑même, une zone de contenu latérale et une zone de contenu inférieure. Les propriétés de la vue normale décrivent le positionnement de ces zones de contenu. Ces informations permettent à l’application d’enregistrer l’état de la vue dans le fichier, de sorte que, lorsqu’il est rouvert, la vue se trouve dans le même état que lors du dernier enregistrement de la présentation.

La méthode ViewProperties.getNormalViewProperties a été ajoutée pour fournir l’accès aux propriétés de la vue normale d’une présentation.

Les classes NormalViewProperties et NormalViewRestoredProperties ainsi que l’énumération SplitterBarStateType ont été ajoutées.

À propos de NormalViewProperties

Représente les propriétés de la vue normale.

Les méthodes getShowOutlineIcons et setShowOutlineIcons indiquent si l’application doit afficher des icônes lors de l’affichage du contenu du plan dans l’une des zones de contenu du mode vue normale.

Les méthodes getSnapVerticalSplitter et setSnapVerticalSplitter spécifient si le séparateur vertical doit se réduire à un état minimisé lorsque la zone latérale est suffisamment petite.

Les méthodes getPreferSingleView et setPreferSingleView indiquent si l’utilisateur préfère voir une seule zone de contenu pleine fenêtre plutôt que la vue normale standard avec trois zones de contenu. Si activé, l’application peut choisir d’afficher l’une des zones de contenu dans toute la fenêtre.

Les méthodes getVerticalBarState et getHorizontalBarState spécifient l’état dans lequel la barre de séparateur horizontale ou verticale doit être affichée. Une barre de séparateur horizontale sépare la diapositive de la zone de contenu située sous la diapositive ; une barre de séparateur verticale sépare la diapositive de la zone de contenu latérale. Les valeurs possibles sont : SplitterBarStateType.Minimized, SplitterBarStateType.Maximized et SplitterBarStateType.Restored.

Les méthodes getRestoredLeft et getRestoredTop définissent la taille de la zone supérieure ou latérale de la diapositive en mode vue normale, lorsque la valeur SplitterBarStateType.Restored est appliquée à getVerticalBarState et getHorizontalBarState, respectivement.

À propos de la restauration de NormalViewProperties

Spécifie la taille de la zone de diapositive (largeur lorsqu’elle est enfant de getRestoredTop, hauteur lorsqu’elle est enfant de getRestoredLeft) de la vue normale, lorsque la zone possède une taille restaurée variable (ni minimisée ni maximisée).

La méthode getDimensionSize spécifie la taille de la zone de diapositive (largeur lorsqu’elle est enfant de getRestoredTop, hauteur lorsqu’elle est enfant de getRestoredLeft).

La méthode getAutoAdjust indique si la taille de la zone de contenu latérale doit compenser la nouvelle taille lors du redimensionnement de la fenêtre contenant la vue dans l’application.

L’exemple ci‑dessous montre comment accéder à ViewProperties.getNormalViewProperties pour une présentation.

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import Presentation, SaveFormat, SplitterBarStateType

presentation = Presentation()
try:
    normal_view_properties = presentation.getViewProperties().getNormalViewProperties()
    normal_view_properties.setHorizontalBarState(SplitterBarStateType.Restored)
    normal_view_properties.setVerticalBarState(SplitterBarStateType.Maximized)

    # Restaurer les propriétés d'affichage de la présentation.
    normal_view_properties.getRestoredTop().setAutoAdjust(True)
    normal_view_properties.getRestoredTop().setDimensionSize(80)
    normal_view_properties.setShowOutlineIcons(True)

    presentation.save("presentation_normal_view_state.pptx", SaveFormat.Pptx)
finally:
    presentation.dispose()

Définir la valeur de zoom par défaut

Pour définir les propriétés d’affichage, suivez ces étapes :

  1. Créez une instance de la classe Presentation.
  2. Configurez les Propriétés d’affichage de la Presentation.
  3. Enregistrez la présentation sous forme de fichier PPTX.

Dans l’exemple ci‑dessous, nous définissons la valeur de zoom à la fois pour la vue diapositive et pour la vue des notes.

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import Presentation, SaveFormat

presentation = Presentation()
try:
    # Définir les propriétés d'affichage de la présentation.
    presentation.getViewProperties().getSlideViewProperties().setScale(100)  # Pourcentage de zoom pour la vue diapositive.
    presentation.getViewProperties().getNotesViewProperties().setScale(100)  # Pourcentage de zoom pour la vue des notes.

    presentation.save("Zoom_out.pptx", SaveFormat.Pptx)
finally:
    presentation.dispose()

FAQ

Puis‑je définir différents paramètres d’affichage pour différentes sections d’une présentation ?

Paramètres d’affichage sont définis au niveau de la présentation (Vue normale/Vue diapositive), pas par section, de sorte qu’un seul jeu de paramètres s’applique à l’ensemble du document lorsqu’il s’ouvre.

Puis‑je pré‑définir différents états d’affichage pour différents utilisateurs ?

Non. Les paramètres sont stockés dans le fichier et sont partagés. Les applications de visualisation peuvent tenir compte des préférences de l’utilisateur, mais le fichier lui‑même ne contient qu’un seul ensemble de propriétés d’affichage.

Puis‑je préparer un modèle avec des propriétés d’affichage pré‑configurées afin que les nouvelles présentations s’ouvrent de la même façon ?

Oui. Étant donné que les propriétés d’affichage sont stockées au niveau de la présentation, vous pouvez les intégrer dans un modèle et créer de nouveaux documents à partir de celui‑ci avec la même configuration d’affichage initiale.