Recupera e aggiorna le proprietà di visualizzazione della presentazione in PHP

Introduzione

La vista normale è composta da tre regioni di contenuto: la diapositiva stessa, una regione di contenuto laterale e una regione di contenuto inferiore. Le proprietà riguardano il posizionamento delle diverse regioni di contenuto. queste informazioni consentono all’applicazione di salvare lo stato della vista nel file, in modo che quando viene riaperta la vista sia nello stesso stato in cui la presentazione è stata salvata l’ultima volta.

È stato aggiunto il metodo ViewProperties::getNormalViewProperties per fornire l’accesso alle proprietà della vista normale di una presentazione.

Sono state aggiunte le classi NormalViewProperties, NormalViewRestoredProperties e le loro discendenti, l’enumerazione SplitterBarStateType.

Informazioni su INormalViewProperties

Rappresenta le proprietà della vista normale.

I metodi getShowOutlineIcons e setShowOutlineIcons specificano se l’applicazione deve mostrare le icone quando visualizza il contenuto della struttura in una delle regioni di contenuto della modalità vista normale.

I metodi getSnapVerticalSplitter e setSnapVerticalSplitter specificano se il divisore verticale dovrebbe scattare a uno stato ridotto quando la regione laterale è sufficientemente piccola.

Le proprietà getPreferSingleView e setPreferSingleView specificano se l’utente preferisce vedere un’unica regione di contenuto a schermo intero rispetto alla vista normale standard con tre regioni di contenuto. Se abilitato, l’applicazione può scegliere di visualizzare una delle regioni di contenuto in tutta la finestra.

I metodi getVerticalBarState e getHorizontalBarState specificano lo stato in cui la barra divisoria orizzontale o verticale deve essere mostrata. Una barra divisoria orizzontale separa la diapositiva dalla regione di contenuto sotto la diapositiva, mentre la barra divisoria verticale separa la diapositiva dalla regione di contenuto laterale. I valori possibili sono: SplitterBarStateType::Minimized, SplitterBarStateType::Maximized e SplitterBarStateType::Restored.

I metodi getRestoredLeft e getRestoredTop specificano la dimensione della regione superiore o laterale della vista normale, quando il valore SplitterBarStateType::Restored è applicato a getVerticalBarState e a getHorizontalBarState di conseguenza.

Informazioni sul ripristino di INormalViewProperties

Specifica le dimensioni della regione della diapositiva (larghezza quando è figlio di getRestoredTop, altezza quando è figlio di getRestoredLeft) della vista normale, quando la regione ha una dimensione variabile ripristinata (neppure ridotta né massimizzata).

Il metodo getDimensionSize specifica la dimensione della regione della diapositiva (larghezza quando è figlio di restoredTop, altezza quando è figlio di restoredLeft).

Il metodo getAutoAdjust specifica se la dimensione della regione di contenuto laterale deve compensare la nuova dimensione quando si ridimensiona la finestra che contiene la vista all’interno dell’applicazione.

Di seguito è riportato un esempio che mostra come accedere alle proprietà ViewProperties::getNormalViewProperties per una presentazione.

  $pres = new Presentation();
  try {
    $pres->getViewProperties()->getNormalViewProperties()->setHorizontalBarState(SplitterBarStateType::Restored);
    $pres->getViewProperties()->getNormalViewProperties()->setVerticalBarState(SplitterBarStateType::Maximized);

    # Ripristina le proprietà di visualizzazione della presentazione
    $pres->getViewProperties()->getNormalViewProperties()->getRestoredTop()->setAutoAdjust(true);
    $pres->getViewProperties()->getNormalViewProperties()->getRestoredTop()->setDimensionSize(80);
    $pres->getViewProperties()->getNormalViewProperties()->setShowOutlineIcons(true);
    $pres->save("presentation_normal_view_state.pptx", SaveFormat::Pptx);
  } finally {
    $pres->dispose();
  }

Imposta il valore di zoom predefinito

Per impostare le proprietà della vista, seguire i passaggi seguenti:

  1. Creare un’istanza della classe Presentation.
  2. Impostare le View Properties della Presentation.
  3. Scrivere la presentazione come file PPTX. Nell’esempio mostrato di seguito, abbiamo impostato il valore di zoom per la visualizzazione della diapositiva così come per la visualizzazione delle note.
  $presentation = new Presentation();
  try {
    # Impostazione delle proprietà di visualizzazione della presentazione
    $presentation->getViewProperties()->getSlideViewProperties()->setScale(100); // Valore di zoom in percentuale per la visualizzazione della diapositiva
    $presentation->getViewProperties()->getNotesViewProperties()->setScale(100); // Valore di zoom in percentuale per la visualizzazione delle note

    $presentation->save("Zoom_out.pptx", SaveFormat::Pptx);
  } finally {
    $presentation->dispose();
  }

FAQ

Posso impostare impostazioni di visualizzazione diverse per diverse sezioni di una presentazione?

View settings sono definiti a livello di presentazione (Normal View/Slide View), non per sezione, quindi un unico insieme di parametri si applica all’intero documento quando viene aperto.

Posso predefinire stati di visualizzazione diversi per utenti diversi?

No. Le impostazioni sono memorizzate nel file e sono condivise. Le applicazioni di visualizzazione possono rispettare le preferenze dell’utente, ma il file stesso contiene un unico set di proprietà di visualizzazione.

Posso preparare un modello con le proprietà di visualizzazione predefinite in modo che le nuove presentazioni si aprano allo stesso modo?

Sì. Poiché le view properties sono memorizzate a livello di presentazione, è possibile includerle in un modello e creare nuovi documenti da esso con la stessa configurazione di vista iniziale.