Un'applicazione utile dell'API Presentazioni Google è l'unione di informazioni o più origini dati in una presentazione basata su modelli.
Questa pagina illustra come acquisire dati da una sorgente esterna e inserirlo in una presentazione modello esistente. Il concetto è in modo simile a quello dell'unione dinamica con un elaboratore di testi e un foglio di lavoro.
Questo approccio risulta utile per diversi motivi:
I designer possono perfezionare facilmente il design di una presentazione utilizzando nell'editor di Presentazioni Google. È molto più semplice che regolare i parametri in dell'app per impostare il rendering della slide.
La separazione dei contenuti dalla presentazione è un'attività molto nota che offre molti vantaggi.
Una ricetta base
Ecco un esempio di come puoi utilizzare l'API Presentazioni per unire i dati in una presentazione:
Crea la presentazione nel modo che preferisci utilizzando segnaposto per aiutarti con la progettazione.
Per ogni elemento di contenuto che dovrai inserire, sostituisci il segnaposto con un tag. I tag sono caselle di testo o forme con una stringa univoca. Assicurati di utilizzare stringhe che difficilmente si presentano normalmente. Ad esempio:
{{account-holder-name}}
potrebbe essere un buon tag.Nel tuo codice, utilizza l'API Google Drive per creare una copia del una presentazione.
Nel codice, utilizza il comando gcloud
batchUpdate
, con un insieme direplaceAllText
per eseguire tutte le sostituzioni del testo nel corso della presentazione. UtilizzareplaceAllShapesWithImage
per eseguire la sostituzione delle immagini in tutta la presentazione.
Dopo aver creato una presentazione contenente tag, assicurati di creare una copia e utilizzare l'API Presentazioni per manipolare la copia. Non utilizzare l'API Presentazioni per manipolare il "modello" principale copia!
Le seguenti sezioni includono snippet di codice che illustrano alcune di queste e il processo di sviluppo. Puoi anche guardare il video qui sopra per vedere un esempio completo (Python) che combinano molti dei concetti delle singole sezioni di seguito.
Unisci testo
Puoi utilizzare una replaceAllText
di sostituire tutte le istanze di una determinata stringa di testo in un
una presentazione con nuovo testo. Per le unioni, questa procedura è più semplice
di trovare e sostituire singolarmente ciascuna istanza di testo. Uno dei motivi per cui
l'approccio più sofisticato è che gli ID degli elementi di pagina
sono difficili da prevedere,
soprattutto quando i collaboratori
permettono di perfezionare e gestire il modello.
una presentazione.
Esempio
In questo esempio viene usata l'API Drive per copiare un modello di presentazione, rendendo una nuova istanza della presentazione. Quindi utilizza l'API Fogli Google per leggere i dati da un foglio di lavoro di Fogli e infine usa l'API Presentazioni per aggiornare nuova presentazione.
L'esempio prende i dati da 3 celle in una riga di un intervallo denominato
in un foglio di lavoro. Sostituisce poi questi dati nella presentazione ovunque
la stringa {{customer-name}}
,
{{case-description}}
, oppure
Si verificano {{total-portfolio}}
.
Apps Script
Vai
Java
JavaScript
Node.js
PHP
Python
Ruby
Unisci immagini
Puoi anche unire le immagini nella presentazione utilizzando un
replaceAllShapesWithImage
richiesta. Questa richiesta sostituisce tutte le istanze di forme contenenti
stringa di testo fornita con l'immagine fornita. La richiesta viene inviata automaticamente
posiziona e ridimensiona l'immagine per adattarla ai limiti della forma del tag,
conservando le proporzioni dell'immagine.
Esempio
In questo esempio viene usata l'API Google Drive per copiare un modello di presentazione, rendendo
una nuova istanza della presentazione. Quindi utilizza l'API Presentazioni per trovare
qualsiasi forma con il testo {{company-logo}}
e sostituirlo con l'immagine del logo dell'azienda. La richiesta sostituisce anche qualsiasi
forma con il testo {{customer-graphic}}
con un'immagine diversa.
Apps Script
Vai
Java
JavaScript
Node.js
PHP
Python
Ruby
Sostituisci caselle di testo o istanze di immagini specifiche
La replaceAllText
e replaceAllShapesWithImage
richieste sono utili per sostituire i tag in una presentazione, ma
a volte basta sostituire gli elementi in base a un altro criterio, come
come trovarsi in una slide specifica.
In questi casi, devi recuperare gli ID delle forme di tag che sostituire. Per le sostituzioni del testo, devi eliminare il testo in quelle forme e poi inserisci il nuovo testo (vedi l'esempio Modificare il testo in una forma specificata).
La sostituzione delle immagini è più complessa. Per unire un'immagine, devi:
- Recuperare l'ID della forma del tag.
- Copia la dimensione e trasforma le informazioni dal tag.
- Aggiungi l'immagine alla pagina, utilizzando le dimensioni e le informazioni trasformate.
- Elimina la forma del tag.
È possibile mantenere le proporzioni dell'immagine e ridimensionarla alla dimensione desiderata richiedono alcune cure, come descritto nella sezione seguente. Vedi anche questo esempio: Sostituisci un tag di forma con un'immagine.
Mantieni proporzioni
Quando crei immagini utilizzando l'API Presentazioni, l'aspetto si basa solo sul
dimensioni dell'immagine, non su quelle
e trasformano i dati. I dati sulle dimensioni forniti
in createImage
la richiesta è considerata
delle dimensioni desiderate dell'immagine. L'API è adatta
le proporzioni dell'immagine alle dimensioni desiderate, quindi applica la trasformazione fornita.
Quando sostituisci un tag con un'immagine, ne mantieni l'aspetto di immagine impostando le dimensioni e il ridimensionamento dell'immagine come segue:
- width: impostato sul prodotto di
width
escaleX
del tag - height: impostato sul prodotto dei valori
height
escaleY
del tag - scale_x: impostato su
1
- scale_y: impostato su
1
In questo modo l'API Presentazioni si adatta all'immagine in base al
le dimensioni visive del tag, anziché le dimensioni non in scala (vedi
Sostituisci un tag di forma con un'immagine).
L'impostazione dei parametri di scalabilità su 1
impedisce che l'immagine venga ridimensionata
due volte.
Questa disposizione garantisce che le proporzioni dell'immagine vengano mantenute e impedisce l'immagine in modo che non superi le dimensioni della forma del tag. L'immagine contiene nello stesso punto centrale della forma del tag.
Gestisci modelli
Per le presentazioni modello che l'applicazione definisce e possiede, crea utilizzando un account dedicato che rappresenta l'applicazione. Account di servizio sono una buona scelta ed evita complicazioni con i criteri di Google Workspace che limitano condivisione.
Quando crei istanze di presentazioni a partire da modelli, usa sempre le credenziali dell'utente finale. Ciò offre agli utenti il controllo completo alla presentazione risultante e impedisce i problemi di scalabilità legati limiti di Google Drive.
Per creare un modello utilizzando un account di servizio, segui questi passaggi con le credenziali dell'applicazione:
- Crea una presentazione utilizzando presentations.create nell'API Presentazioni.
- Aggiorna le autorizzazioni per consentire ai destinatari della presentazione di leggerla utilizzando permissions.create nell'API Drive.
- Aggiorna le autorizzazioni per consentire agli autori dei modelli di scrivere nei file utilizzando permissions.create nell'API Drive.
- Modifica il modello come richiesto.
Per creare un'istanza della presentazione, segui questi passaggi con le credenziali utente:
- Crea una copia del modello utilizzando files.copy nell'API Drive.
- Sostituisci i valori utilizzando presentation.batchUpdate nell'API Presentazioni.