Bonjour,
Y-a-t-il un Plugin ou un moyen pour que lorsque qu'on visualise des photos en grand format, l'image s'ajuste automatiquement à l'écran (reduce/enlarge).
Merci d'avance.
Hors ligne
Il y a quelque chose dans ce goût là du côté de [Forum, topic 14394] Pouvoir styler la page diaporama Avec un redimensionnement à l'affichage géré par le navigateur (donc c'est plus ou moins beau selon le navigateur)
Ailleurs, j'ai vu la technique suivante: 4 à 6 tailles disponibles sur le serveur, et en AJAX, selon la taille disponible dans le navigateur, on affiche la taille 1, la taille 2 jusqu'à la taille 6. Ca me semble très malin parce que la qualité de la photo affichée est indépendante du navigateur utilisé. Malheureusement ne va pas être exploitable tel quel dans Piwigo, car il n'y a qu'une seule "taille web".
Hors ligne
C'est plutôt axé sur le diaporama sur le topic.
Je vais creuser
Merci
Hors ligne
theolivier a écrit:
C'est plutôt axé sur le diaporama sur le topic.
Oui, mais il y a la technique de redimensionner dynamiquement selon la place dispo dans le navigateur.
Hors ligne
Lien intéressant sur la qualité du redimensionnement des images par les navigateurs web : On UI Quality (The Little Things): Client-side Image Resizing (FlickR blog, english)
Hors ligne
-ms-interpolation-mode:bicubic et l'AlphaImageLoader ne donne pas entière satisfaction du point de vu qualité.
Mais plus encore...
Sur une petite image cela va encore à peu près bien.
Si tu me places 12 images (des photos en grand format) sur une page, et que tu appelles 12 fois AlphaImageLoader qu'est-ce que cela va donner?
1 - Le temps de téléchargement....
2 - Le téléchargement doit être complet (alors que une image jpg peut être affichée avec certains algorithmes de compression sans attendre la fin du téléchargement), Là on doit totalement charger l'image parce que sinon AlphaImageLoader ne peut pas la traiter.
3 - Si le poste du client n'est pas assez puissant (ce qui justifie le maintient en IE6), tu es tranquille que 12 transformations par AlphaImageLoader vont mettre à genoux sa machine.
Il ne faut pas resizer au niveau du client.
On ne sait pas quelle taille (poids) feront les images de demain.
Dès qu'un jpg fait plus d' 1.5 Mo on ne sait plus coté serveur faire de miniature parce que cela bouffe toute la mémoire.
Tu viens de sortir avec Ron notre pLoader qui lui va faire le resize sur le poste du webmaster et pas sur le poste du visiteur.
C'est un choix à bien calculer.
Hors ligne
Je suis persuadé que la meilleure solution, c'est le resize côté client avant upload. Mais il faut reconnaître que la solution actuelle dans Piwigo ne permet pas d'adapter l'affichage selon la taille du navigateur (car on a une seule et unique "taille web").
Il ne faut pas être fermé aux alternatives. C'est plutôt "à la mode" de faire travailler le navigateur de nos jours.
Hors ligne
z0rglub a écrit:
Je suis persuadé que la meilleure solution, c'est le resize côté client avant upload. (....) C'est plutôt "à la mode" de faire travailler le navigateur de nos jours.
Sur le premier point évoqué, je suis tout à fait d'accord. Sur le second, pas vraiment.
En admettant que Piwigo sache gérer plusieurs résolutions pour la même images.
Redimensionnement avant upload :
- le webmaster contrôle l'équilibre entre les dimensions, le poids et la qualité de la photo sur le site ; peu semblent s'en soucier, mais c'est pourtant quelque chose qui me semble primordial
- nécessite par contre que le webmaster prépare ses photos une à une (s'il si connait, il peut disposer de scripts...)
Redimensionnement sur le serveur au moment de l'upload :
- le webmaster contrôle déjà un peu moins le poids et la qualité de la photo (dépendra des possibilités offertes par l'interface et le gestionnaire d'image sollicité GD, GD2, ImageMagick, ...)
- l'upload peut être long sur de gros fichiers (mes jpeg non réduites font par exemple, entre 6 et 10Mo...)
- comme indiqué par VDigital, sur la plupart des serveurs çà va planter (manque de mémoire) et même si çà ne plantait pas pour cause de mémoire, la conso CPU ferait tilter le compte de l'utilisateur
Redimensionnement sur le serveur au moment du download (avec mise "en cache" de la photo traitée pour éviter qu'elle ne soit redimensionnée à chaque fois) :
- on n'est pas obligé de traiter toutes les photos de la galerie, mais idem que précédement avec en plus des problèmes liés au fait qu'au premier téléchargement par quelqu'un, le visiteur devra attendre que le serveur ait redimensionné la photo
Redimensionnement sur le poste client du visiteur :
- si l'image est trop grosse, on fait télécharger 5Mo de données à quelqu'un là ou 250ko auraient été suffisants
- même avec l'ADSL, 5Mo c'est encore trop long à charger pour afficher une photo
- çà mange de la bande passante sur le serveur pour rien
- on ne contrôle pas la qualité du redimensionnement
- si on doit mettre en place un script d'affichage optimisé pour chacun des navigateurs existants, on s'en sort pas (=> solution : faire usage d'une applet java ou flash mais impose une contrainte technologique pour consulter la galerie)
Hors ligne
Je suis tout à fait d'accord avec toi grum, surtout si tu utilises comme exemple une photo de 10MB qui serait downloadé par le navigateur et resizé à la volée. Moi je pensais à quelque chose de beaucoup plus léger en terme de différence : passer de 800px à 750px parce que la navigateur est juste un peu plus petit que ce qu'à prévu le webmaster.
Un concept intéressant dont j'ai parlé un peu plus tôt dans [Forum, post 102643 by plg in topic 14558] Réduire / Elargir, c'est:
z0rglub a écrit:
Ailleurs, j'ai vu la technique suivante: 4 à 6 tailles disponibles sur le serveur, et en AJAX, selon la taille disponible dans le navigateur, on affiche la taille 1, la taille 2 jusqu'à la taille 6. Ca me semble très malin parce que la qualité de la photo affichée est indépendante du navigateur utilisé. Malheureusement ne va pas être exploitable tel quel dans Piwigo, car il n'y a qu'une seule "taille web".
Hors ligne
Bonjour ;
je vais peut-être dire une bêtise, mais dans le premier site de photos que j'avais fait (un peu nul alors je le cite pas plus, c'est pas la peine), le petit script que j'avais utilisé (dont les références sont ci-dessous) redimensionnait les images. Ca utilisait une fonction JavaScript apparemment :
<SCRIPT LANGUAGE="JavaScript"> <!-- script (c) Fanatek <!-- http://fanatek.free.fr <!-- email : fanatek@free.fr function winRefresh() { resize(false); } function resize(first) { if (first) { wi=document.theimg.width; hi=document.theimg.height; } if ("Netscape" == navigator.appName) { ws=innerWidth*1.00; hs=innerHeight*1.00; } else { ws=document.body.clientWidth*1.00; hs=document.body.clientHeight*1.00; } rw=ws/wi; rh=hs/hi; if (rw<rh) { if (rw<=1) { document.theimg.width=rw*wi; document.theimg.height=rw*hi; } } else { if (rh<=1) { document.theimg.width=rh*wi; document.theimg.height=rh*hi; } } } //--> </SCRIPT>
Et puis ensuite, le chargement de l'image se faisait ainsi :
<img src="Dsc01635.jpg" NAME="theimg" onload="resize(true)">
Alors bon moi j'y connais (pour l'instant) pas grand-chose, mais pensez-vous que cela puisse être intégré dans PWG ? Par les utilisateurs eux-même, éventuellement ?
Personnnellement je pense que c'est assez indispensable en fait, même si on n'upload pas ses images à 5 Mo, le fait d'avoir à systématiquement recaler l'affichage du navigateur à chaque photo, ça diminue un peu le charme -- lequel part de très haut, il faut dire.
Bon, ben... en espérant que j'ai pas dit d'idioties trop grosses...
A bientôt !
Luc
Hors ligne
... juste une précision et je me tais un peu :
j'imagine qu'une objection au bout de code dont je viens de parler, est qu'il est en JavaScript (donc en gros intégré à des pages (X)HTML), alors que toutes les pages de PWG sont écrites en PHP. Mais si j'ai pas trop mal compris, PHP sert en fait à présenter des pages en HTML au navigateur qui les télécharge, dont le code (HTML) est fonction du résultat de l'exécution du code PHP effectué par le serveur où elles sont téléchargées, non ? Ma question est : dans ce cas, n'est-il pas possible d'intégrer ce bout de code JavaScript aux pages HTML générées par le code PHP ? Non ?... Allez, s'iouplaît...
Bon allez à plus.
Luc
Hors ligne
A priori le mieux pour l'instant semble d'utiliser les images en haute définition. Voir [Forum, topic 15297] [Résolu] Image en "plein écran" en cliquant dessus, qui comporte des informations intéressantes.
Luc
Hors ligne
Merci de faire des propositions ;-)
Il me semble que le plugin que P@t à en préparation correspond à ce que tu souhaites
Hors ligne