Ada Programming $WikiTagline
 

But

Lors de l'envoi d'une image vers le serveur, cration d'une vignette afficher sur la page, avec un lien sur une plus grande image.

Solution

Le module Minimage : -- Merci de signaler d'ventuels problmes dans le paragraphe de discussion (vous pouvez le faire en Franais), ou par courriel (sur la page originale, pas sur la copie locale, voir les liens en bas de page).

Ajouter la ligne suivante dans le fichier local/config.php

    include_once("cookbook/minimage.php");

Utilisation

Ecrire Img:image.ext l'endroit souhait de la page. Par exemple :

 Img:MonImage.jpg

Si les dimensions par dfaut ne vous agrent pas, vous pouvez imposer les dimensions en prcisant Img:small_size.plain_size.image.ext. Par exemple:

 Img:150*800*autreimage.gif

Nota : l'usage du point comme sparateur de dimension n'est plus support. Vous devez supprimer les dimensions dfinies avec une point pour avoir des liens encore fonctionnels - dsol, c'est li aux noms d'images comportants uniquement des chiffres -

Le type d'image est limit jpeg, gif et png. Quand on clique sur l'appel ''Img:'', un cran va s'ouvrir pour vous inviter tlcharger votre image et crer ou modifier les informations IPTC.

Pour forcer le redimensionnement d'une image existante, prfixez par une toile (*), qui devra tre supprime ensuite:

 Img:*220*1024*monimage.jpg
Attach:ExImg.png

Aprs validation de l'entre, les images sont redimensionnes et stockes sur le disque dur.

Il n'y a pas de limitation de taille (mais votre serveur probablement des limitations), mais des fichiers dfaillants seront automatiquement effacs, et les images sources de trop grande taille seront redimensionnes.

Ce script ne redimensionne pas les images plus petites que (1.15 * taille requise) - pour limiter la perte de qualit lorsque la taille est lgrement suprieure celle requise.

Site exemple :

  • http://www.rouzeau.net/w3/z.php5?pagename=Main.WikiSandbox(approve sites)
    le mot de passe d'envoi est 'miaou' .

Vous pouvez aussi tlcharger les images par FTP. Elles seront redimensionnes au premier affichage. Dans ce cas, les informations IPTC seront celles par dfaut pour le titre et les instructions spciales, et le titulaire du copyright sera le premier afficher les images... (son nom sera lu sur le cookie d'auteur). Pour les fichier envoys par FTP, l'extension de l'image doit tre en minuscule.

  • La petite image est stocke comme image.s.ext (affiche sur la page)
  • L'image normale est stocke comme image.p.ext (la petite image renvoie vers celle-ci)
  • L'image d'archive est stocke image.ext (non affiche)

Si l'image normale est de la mme taille que l'image d'archive, l'archive sera automatiquement effae.
Cette image d'archive peut tre affiche par Attach:image.ext.
Cette archive a une taille maximum et sera redomensionne si elle dpasse le maximum. Si vous voulez supprimer automatiquement les images d'archive, dfinissez une taille maximum pour l'archive identique la taille normale.

Si la petite image est de la mme taille que la grande image, il n'y aura pas de lien vers la grande image. Ainsi par exemple :

 Img:350*350*UneImage.jpg 

sera simplement affiche avec une dimension de 350 pixels.

Configuration

Sur PmWiki2 seulement. Ncessite d'avoir la librairie GD version 2.03 et au del (pour permettre le rchantillonage d'image). Cette librairie fait partie de la distribution PHP mais n'est pas toujours installe parce que son installation est dlicate et qu' elle utilise beaucoup de ressources machine. Si le redimensionnement n'est pas possible, un message sera affich.

Ncessite l'activation sur PmWiki des envois de fichiers. Le rpertoire de stockage est le mme que celui des fichiers.

 
#$WriteGif=FALSE; // Force l'inactivation de la cration de fichiers 'gif'
#                 (dfaut TRUE, mais vrifie l'existence de la fonction)
#$DispIPTC=FALSE; //Stoppe l'entre interactive des infos IPTC,dfaut TRUE 
$img_smallsize = valeur; //Taille de l'image affiche, dfaut 256
$img_plainsize = valeur; //Taille de l'image lie, dfaut 768
$img_archsize = valeur; //Taille maxi de l'archive sur disque, dfaut 1280
## Mettre la taille de l'archive gale  la taille de l'image lie
##  efface automatiquement les archives
#$OverSize = valeur;//surdimension n'entranant pas de retaillage,dfaut 1.15
## Informations IPTC par dfaut (images jpeg seulement)
$def_iptc_caption = 'text'; 
# S'il n'y a pas de titre, par defaut 'Image collected on a PmWiki'
$def_iptc_copyright = 'text'; 
# S'il n'y a pas de copyright et si l'auteur est inconnu, vide par dfaut
$def_iptc_special = 'text'; 
# *ajout* aux instructions speciales dj existantes, par dfaut vide.
# Peut tre utilis pour dfinir une licence (cc ou artistique ou autre).

Les chanes par dfaut dfinies ci-dessus peuvent tre modifi par le module de traduction (voir paragraphe ci-dessous)

Quand la saisie interactive des informations IPTC est dsactive, les valeurs paramtres sont utilises, et l'auteur (tel que dfini dans le cookie) est dfini comme titulaire du copyright, s'il n'y a pas de valeur pas dfaut. Pour inactiver cette dfinition d'auteur, mettez un '-' ou un autre caractre comme auteur par dfaut.

Traduction

Vous devez activer la page XLPageCookbook? et slectionner dans cette page les chanes correspondant au module Minimage.

Attention!, contrairement ce qu'on voit parfois (pour une question de prsentation), les chanes de caractres dans une XLPage doivent tre crites sur une seule ligne - corriger lors de l'intgration

Limitations

  1. je n'ai pas t capable de rcrire les informations IPTC sur les images qui en possdent dj. Aussi dans ce cas, les informations ne sont pas modifies.
    Je n'ai aucune ide du problme, aussi si vous tes apte comprendre ce genre de choses, voici des liens sur le code source de la fonction iptcembed() :
    - www.koders.com(approve sites)
    - lxr.php.net(approve sites)
    Si quelqu'un de comptent peut jeter un oeil...
  2. Mme si la cration d'image gif est cense fonctionner, ceci n'est pas forcment excact. Chez mon hbergeur, cela conduit a une erreur interne du serveur.
    Pour forcer l'inactivation de la cration d'images gif, mettez $WriteGif=FALSE; (dans le fichier de configuration)
  3. Si la cration de gif n'est pas autorise, le module cre des images jpeg avec l'extension '.gif'.
    Ceci n'est gure lgant mais c'est gr sans problme par la majorit des navigateurs.

Amliorations potentielles

  1. Grer le format 'Dj vu' (.djvu) ? plus longue chance... des commentaires ?

License

GPL

Historique

  • 27 Nov. 2004 V0.1 - 1re mission - Mon premier script PHP, et ce ne fut pas facile! Il faut dire aussi que je n'ai pas commen par le plus ais...
  • 28 nov. 2004 V0.2 - Rsolution des problmes avec les pages contenant des lettes accentues.
  • 29 nov. 2004 V0.3 - Rsolution du problme avec l'extension .jpeg. Autorisue l'utilisation des majuscules comme extension (mais stock en minuscule sur le disque dur)
  • 1 dc. 2004 V0.4 - Prsentation - Ajout le paramtre $WriteGif pour bloquer l'criture des gif. Ajout $DispIPTC pour permettre/bloquer l'entre interactive des informations IPTC.
  • 26 dc. 2004 V0.5 - Corrig pour fonctionner avec PmWiki 2.0Beta10 et au del
  • 8 jan. 2005 V1.0 - Rechargement des vignettes fonctionnel - paramtre $OverSize
  • 16 jan. 2005 - Ajout de la documentation utilisateur dans le fichier zip
  • 16 jan. 2005 V1.1 - Supprim la fonction glob(), qui n'existe pas sur toutes les installations
  • 30 jan. 2005 V1.2 - Ajout la possibilit de forcer des dimensions
  • 31 jan 2005 V1.3 - Srieux nettoyage du code, ajout log des envois dans les fichiers (All)RecentUploads
  • ___fv 2005 V1.4 - Accepte un mlange minuscules/majuscules dans les extensions
  • 13 fv 2005 V1.5 - On peut forcer le redimensionnement d'image en prfixant par * - Il n'y a plus de lien vers une image de taille identique.
  • 13 feb. 2005 V1.6 - correction avec un seul paramtre de chargement
  • 24 apr. 2005 V1.7 - affiche les paramtres IPTC avec la grande image
  • 16 may 2005 V1.8 - correction htmlentities sur le texte IPTC affich (car. accentus)
  • 31 oct 2005 V1.9 - Peut dsormais charger les images ayant un nom accentue avec IE - Le chargement indirect avec $EnableDirectDownload=0 est possible.

Contributeur

PRZ?

Discussion

Ce cookbook fonctionne vraiment bien. J'aimerais pouvoir changer la fonction finale de lien:
Au lieu D'AFFICHER l'image.p (action=dispimg&im=image.p.jpg), peut-on crer la place UN LIEN VERS UNE NOUVELLE PAGE (avec le nom de l'image et sans l'extension, exemple: image001?), avec son beau point d'interrogation bleu... ?
On pourrait ainsi constituer, partir de l, une srie de pages directement partir d'une page-bibliothque d'uploads. Ce serait ensuite trs facile de crer des catgories, d'ajouter et de constituer des includes, des trails, des commentaires, etc. Ce serait la base pour une galerie compltement wiki.
(On peut faire a manuellement, mais c'est long...)
edouard

Il existe sur pmWiki des galleries fonctionnant sur ce principe. Mon but n'a jamais t de remplacer un module de gallerie, ce qui necessiterait des modifications importantes. Tous les modules de galleries de pmWiki 1 (il y en avait de bons) n'ont pas t ports sur pmWiki2 et bien qu'il y ait du choix sur pmWiki 2, il n'est pas trop facile de s'y retrouver. PRZ?


Une liste des images uploades avec leur vignettes Y a-t-il un moyen d'obtenir dans une page:

  1. la liste de toutes les images uploades du groupe
  2. avec leurs vignettes?

<< | Index complments? | >>


Traduction de Cookbook:ImagesAutoResizing - Page originale sur PmWiki:PmWikiFr.CrationAutomatiqueDeVignettes