Ridimensionare al volo le immagini contenute nel testo di un articolo

All contributions published for previous SPIP versions

Questo filtro permette di ridimensionare tutte le immagini aggiunte da un autore nel testo di un articolo al volo. E’ possibile specificare le dimensioni massime per la larghezza, l’altezza o per entrambe.

Introduzione

Molti modelli di pagina HTML hanno bisogno che le immagini inserite siano tutte comprese entro una certa dimensione massima affinchè possano impaginarsi correttamente. Questa informazione potrebbe non essere nota a tutti gli utenti di SPIP oppure l’amministratore di SPIP potrebbe non essere in grado di ridimensionare le immagini per conto proprio (credetemi....è possibile). Dunque, proprio per essere sicuri che l’impaginazione avvenga correttamente, ora è possibile imporre un ridimensionamento al volo di tutte le immagini inserite nel corpo di un articolo usando un filtro.

Come usare il filtro

Questo filtro è una versione modificata di reduire_image.
Se la libreria GD è installata sul vostro server, la prima volta che il filtro viene eseguito sarà creata una nuova immagine ridimensionata. Tale immagine verrà riutilizzata per tutte le successive chiamate al filtro.
Qualora la libreria GD non fosse presente, il ridimensionamento avverrà semplicemente imponendo larghezza ed altezza negli attributi del tag <img> nel codice HTML.

Il filtro richiede due argomenti:
-  la massima dimensione dell’immagine in pixel
-  l’asse che dovrà rispettare la dimensione massima (x,y,both ovvero x,y,entrambi)

La sintassi del filtro è:
reduire_all_images{dimensione_massima,asse}

Ad esempio, per ridimensionare tutte le immagini più larghe di 500 pixel a 500 pixel si può scrivere:

<BOUCLE_art(ARTICLES){id_article}>
[(#TEXTE|reduire_all_images{500,x})]
</BOUCLE_art>

Così facendo, un’immagine di dimensioni 450x600 non sarà ridimensionata (poichè è più stretta di 500 pixel), ma un’immagine di dimensioni 600x600 sarà ridimensionata, mantenendo le proporzioni, ad una larghezza di 500 pixel.

<span lang='fr'> Image originale</span>
Image originale
L’image est plus petite que la colonne et son texte de description n’est pas entièrement visible
<span lang='fr'>Image redimentionnée</span>
Image redimentionnée
L’image a été redimentionnée avec le filtre reduire_all_images{500,x}. Elle est maintenant complètement visible, ainsi que son texte de description

Poichè un filtro ha effetto solo sui modelli di pagine HTML, è attivo solo nella parte pubblica del sito. Quindi nessuna immagine sarà ridimensionata vedendo l’anteprima dell’articolo nello spazio redazionale.

Cache

Le immagini ridimensionate vengono salvate nella cartella “resized” situata all’interno della sottocartella di IMG corrispondente all’estensione del file.
esempio: IMG/jpg/resized oppure IMG/gif/resized

Queste vengono calcolate solo la prima volta che il filtro viene chiamato.

Il nome di queste immagini è costruito nel modo seguente:
dimensione-asse-nomeimmagine.estensione

Quindi un’immagine chiamata immagine1.jpg ridimensionata a 500 pixel lungo l’asse x sarà salvata nella cartella IMG/jpg con il nome 500-x-immagine1.jpg.

Manutenzione automatica

Una procedura di manutenzione automatica viene eseguita periodicamente. Il periodo è indicato nella variabile $maint_delay all’inizio del file e può essere modificata.
Il suo valore predefinito è una settimana.

$maint_delay = 3600*24*7;  
//7 days of 24h of 3600 second

La procedura di manutenzione consiste nella gestione e cancellazione delle immagini inutilizzate (un “garbage collector”).

Quindi, se vengono modificati i modelli delle pagine e le dimensioni massime delle immagini, oppure se le immagini originali vengono modificate, quelle precedentemente create diventano inutili. La procedura le individuerà e le cancellerà automaticamente dalla cartella resized.

Nota: nel caso in cui venga cancellata un’immagine ancora utilizzata (per esempio perchè non è stata visualizzata per molto tempo), sarà ricreata alla prima richiesta succesiva, quindi non si verificherà alcun problema.

Come installare il filtro

Per installare il filtro è necessario scaricare l’archivio compresso, estrarre il file mes_fonctions.php3 ed aggiungere il suo contenuto nel vostro file mes_fonctions.php3 nella cartella principale del sito. Se non esiste alcun file mes_fonctions.php3, sarà sufficiente estrarre il file mes_fonctions.php3 nella cartella principale del sito.

Questo filtro è ancora allo stadio sperimentale e quindi prego tutti di contattarmi se alcuni di voi dovessero rilevare errori di funzionamento sul vostro server.

Download the filter
Copy and paste the text in mes_foncions.php3 in your mes_fonctions.php3

updated on 24 July 2005

Discussion

Aucune discussion

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom