SharePoint Online: Obtener miniaturas y reducir imágenes

Vamos a analizar como podemos reducir imágenes dentro de Power Automate, usando Sharepoint como base.

NOTA: Esta función no está disponible para SharePoint on-premise ni para SharePoint 2019.

SharePoint Online puede generar vistas previas de imagen para documentos en formato PNG. La reproducción de imágenes está basada en el siguiente handler:

/_layouts/15/getpreview.ashx

En cuanto a los tipos de archivo soportados, a día de hoy tenemos 47 formatos con soporte:
.wmv, .3gp, .3g2, .3gp2, .asf, .mts, .m2ts, .avi, .mod, .dv, .ts, .vob, .xesc, .mp4, .mpeg, .mpg, .m2v, .ismv, .mov, .m4v, .docm, .docx, .dotx, .dotm, .bmp, .jpg, .jpeg, .tiff, .tif, .png, .gif, .emf, .wmf, .psd, .svg, .ai, .eps, .pdf, .pptm, .pptx, .potm, .potx, .ppsm, .ppsx, .xlsm, .xlsx, .aspx

Para poder ver una lista con todos los tipos de archivo soportados para el inquilino actual, enviaremos la siguiente GET-request al servidor:

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?action=supportedtypes

Lo primero para poder utilizar este handler es que necesitaremos identificar el documento, vista previa del cual queremos obtener.

    IDENTIFICADOR DE DOCUMENTO

Hay dos formas de identificar el documento cuya imagen previa necesitamos. En el primer método proveeremos los identificadores de la Colección de Sitio (guidSite), el Sitio Web (guidWeb) y el Documento (guidFile):

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?guidSite={GUID}&guidWeb={GUID}&guidFile={GUID}

Este método es más complicado, lo cual veremos más adelante.

Para el segundo método, tan solo vamos a proveer la ruta del documento. No es necesario proveer los tres identificadores mencionados arriba. Solo una ruta será necesaria para la reproducción de la imagen previa:

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?path={pathToTheDocument}

 

    TAMAÑO DE LA MINIATURA

El tamaño de la miniatura estará basado en su ancho mientras que el tamaño de alto será calculado de manera dinámica. Para cambiar el tamaño usaremos el parámetro «resolution». Los posibles valores que podemos usar serán:

0: 300px
1: 480px
2: 750px
3: 1024px
4: 1600px
5: 2560px
6: Ancho original del documento

Si el parámetro está vacío, el ancho será 300px (ya que es el valor por defecto). Si el ancho pedido del documento excede el tamaño original, se usará el ancho original para renderizar.

Por ejemplo, para obtener una vista previa de 480 pixeles de ancho usaremos lo siguiente:

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?path={pathToTheDocument}&resolution=1

 

    MÚLTIPLES VISTAS PREVIAS

A día de hoy, los siguientes tipos de archivo pueden tener múltiples miniaturas: .pptm, .pptx, .potm, .potx, .ppsm, .ppsx.

En otras palabras, es posible obtener vista previa de cualquier diapositiva de la presentación almacenada en SharePoint Online. Si, por ejemplo, buscamos obtener vista previa de la segunda diapositiva usaremos el siguiente parámetro index:

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?path={pathToTheSlideDeck}&index=2

 

    CACHE

SharePoint almacena vistas previas en cache por una hora. Para acceder a estos datos usaremos el parámetro force:

https://{tenant}.sharepoint.com/_layouts/15/getpreview.ashx?path={pathToTheSlideDeck}&force=1

 

    PARÁMETROS

Esta es la lista completa de parámetros que podemos usar:

ParámetroNota
actionOpcional. Puede ser solo «supportedtypes»
guidSiteNecesario si el parámetro guidFile es proveído. Es el identificador único (Guid) de la colección de sitio[?] donde el documento buscado se encuentra
guidWebRequerido si el parámetro guidFile es proveído. Es el identificador único (Guid) del sitio donde el documento buscado se encuentra
guidFileRequerido si path está vacío. Es el identificador único (Guid) del documento
pathRequerido si guidFile está vacío. Es la ubicación del documento
resolutionOpcional. Es el tamaño de la imagen de vista previa
clienttypeOpcional. Es el nombre del cliente. Usado solo para ubicación en ULS.[?]
indexOpcional. Número de una página (no en base cero).[?] Aplicado solo para documentos de vista previa múltiple
forceOpcional. Si su valor es «1», la renderización de imagen ignora datos en cache

Estos son los parámetros principales para reducir imágenes y usarlos en consultas HTTP dentro de power automate, lo demas viene de tí.

Cualquier duda nos leemos abajo.

SharePoint Online: Obtener miniaturas y reducir imágenes

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll hacia arriba