Obiettivo
Realizzare un applicativo server-side per migliorare, ridimensionare e proteggere le immagini lato server.
Quando si tratta una foto senza sapere la provenienza si hanno diverse problematiche: le dimensioni possono essere differenti, come il peso, o la foto stessa potrebbe essere di scarsa qualità.
In qualche caso potrebbe essere "marchiata" per limitarne il "furto" da parte di terzi.
Spesso per motivi legati al layout delle pagine, le immagini devono avere dimensioni stabilite aldilà della dimensione originale.
Struttura
Con l'aumento delle visite di un sito si è abbandonato il modello di creazione on-fly iniziale e si è scelta l'elaborazione una tantum lato server all'inserimento di ogni nuova foto, con la creazione, partendo dalla foto orignale, dei thumbnails (semilavorati) necessari alla visualizzazione ottimale del sito.
L'applicativo è sviluppato con algoritmi molto veloci per eseguire un ricampionamento delle foto lineare, bilineare o lanczos.
Diverse sono le parti scritte in assembler per sfruttare al massimo le istruzioni del microprocessore.
Corregge automaticamente i colori, migliora l'immagine, regola i livelli e salva il prodotto finito.
Legge e scrive i formati JPG, GIF e PNG. Gestisce profili programmati avanzati per fusione di immagini con opacità programmabile.
Ricorda le dipendenze della foto originali in caso di ricostruzione o cancellazione.
Fornisce quindi il supporto agli applicativi sul server per la perfetta gestione delle foto e si integra con easyhand web.
Risultati
Ogni giorno vengono processate migliaia di foto con questo applicativo. Solo Mondialbroker ha circa 2 milioni e mezzo di foto generate e mantenute da questo algoritmo.
Spesso le foto sono più veloci da scaricare e più belle delle originali. Si ha generalmente un miglioramento nel consumo di banda e di velocità di navigazione del sito in generale.
In ogni istante il web designer del sito può aggiungere un "formato" nel profilo ed il sistema rigenera i thumbnails automaticamente.