Esempio C

Crea un'applicazione a strati "bambola di carta".

Un'immagine di sfondo contiene la foto di un modello o di un manichino. I record aggiuntivi nel catalogo delle immagini contengono vari capi di abbigliamento e accessori, fotografati per abbinare il manichino in forma e dimensione.

Ogni abbigliamento/foto accessorio viene mascherato e ritagliato al riquadro di delimitazione della maschera per ridurre al minimo le dimensioni dell'immagine. Gli ancoraggi e le risoluzioni delle immagini sono attentamente controllati per mantenere l'allineamento tra i livelli e l'immagine di sfondo; tutte le immagini vengono aggiunte a un catalogo di immagini, con i valori appropriati memorizzati in catalog::Resolution e catalog::Anchor.

Oltre ai livelli, vogliamo anche modificare il colore per gli elementi selezionati. I record di questi elementi vengono preelaborati per rimuovere il colore originale e regolare la luminosità e il contrasto in modo adatto al comando di colorazione. Questa preelaborazione può essere eseguita offline, utilizzando uno strumento di modifica delle immagini come Photoshop, oppure, in casi semplici, può essere eseguita in modo banale aggiungendo op_brightness= e op_contrast= al campo catalog::Modifier.

Questa applicazione non richiede un modello separato, perché tutti gli oggetti sono già allineati correttamente dai relativi ancoraggi immagine ( catalog::Anchor) e ridimensionati ( catalog::Resolution). Lasciamo al cliente il compito di garantire un ordine appropriato dei livelli.

Una richiesta tipica potrebbe avere questo aspetto:

http://server/rootId/mannequin?&hei=400&qlt=90&
layer=1&res=999&src=rootId/tankTopGeneric&colorize=240,122,17&
 layer=2&res=999&src=rootId/skirt14a&
layer=3&res=999&src=rootId/jacket09&
layer=4&res=999&src=rootId/hat2generic&colorize=12,15,34&
 layer=5&res=999&src=rootId/sunglasses&
layer=6&res=999&src=rootId/shoes21

Viene specificata solo l'altezza. Questo consente all’immagine restituita di variare in larghezza a seconda delle proporzioni dell’immagine del manichino, senza riempire i margini con il colore di sfondo.

Non deve avere importanza quale risoluzione viene specificata per ogni livello, purché siano uguali. Questa versione potrebbe non consentire la visualizzazione di visualizzazioni più grandi delle immagini composite. Specificando un valore di risoluzione elevato si evitano problemi correlati a tale limite. Tutte le operazioni di elaborazione e composizione vengono eseguite alla risoluzione ottimale per le dimensioni dell'immagine richieste, per ottenere prestazioni e qualità di output ottimali.

I comandi res= possono essere omessi se tutte le immagini di origine hanno la stessa risoluzione a scala completa (che è probabilmente il caso per questo tipo di applicazione).

È necessario specificare rootId per tutti i comandi src=, anche se sono uguali a rootId specificati nel percorso url.

Se non si utilizza alcun catalogo di immagini, non è possibile un approccio basato sulla risoluzione al ridimensionamento. In questo caso, i fattori di scala espliciti devono essere calcolati per ogni elemento di livello, in base al rapporto tra i valori catalog::Resolution di ciascun livello e il valore catalog::Resolution del livello di sfondo. La richiesta di composizione (con meno livelli) potrebbe quindi avere questo aspetto:

http://server/myApp/mannequin.tif?&hei=400&qlt=90&
 layer= 1&scale=0.3423&anchor=345,225&src=myApp/images/tankTopGeneric.tif&colorize=240,122,17&
 layer=2&scale=0.8544&anchor=140,-157&src=myApp/images/skirt14a

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now