Afficher la focale équivalente en 35mm à partir des exifs Afficher la focale équivalente en 35mm à partir des exifs
 

News:

CPG Release 1.6.26
Correct PHP8.2 issues with user and language managers.
Additional fixes for PHP 8.2
Correct PHP8 error with SMF 2.0 bridge.
Correct IPTC supplimental category parsing.
Download and info HERE

Main Menu

Afficher la focale équivalente en 35mm à partir des exifs

Started by Fuji Passion, September 18, 2008, 12:04:10 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Fuji Passion

Bonjour à tous,

ayant récemment installé une galerie Coppermine (que j'ai bridgée avec succès à Joomla! et phpBB3), j'ai eu beau chercher dans le forum la solution pour lui faire afficher la focale équivalente en 35mm selon l'apn utilisé. J'ai bien dégoté un post en allemand pour les anciennes versions de CPG, mais rien pour les versions récentes. Donc j'ai écrit ce petit bout de code qui fonctionne parfaitement pour la 1.4.18 (stable).

Ouvrez include/exif_php.inc.php et cherchez :

foreach ($exif as $key => $val) {
          if (strpos($showExifStr,"|".$key) && isset($val)){
                $exifParsed[$lang_picinfo[$key]] = $val;
                //$exifParsed[$key] = $val;
          }
        }

APRES, insérez :

//Equiv 35 mm

if (isset($exif['FocalLength']) && preg_match("/FinePix S5Pro/i",$exif['Model'])) $exifParsed[$lang_picinfo['FocalLength']] = $exif['FocalLength'] . " - (" . number_format($exif['FocalLength']*1.5,0) . " mm équiv.)";
else if (isset($exif['FocalLength']) && preg_match("/FinePix S9600/i",$exif['Model'])) $exifParsed[$lang_picinfo['FocalLength']] = $exif['FocalLength'] . " - (" . number_format($exif['FocalLength']*4.5,0) . " mm équiv.)";
else if (isset($exif['FocalLength']) && preg_match("/DiMAGE Z10/i",$exif['Model'])) $exifParsed[$lang_picinfo['FocalLength']] = $exif['FocalLength'] . " - (" . number_format($exif['FocalLength']*6.04,0) . " mm équiv.)";

Dans ce code d'exemple, on a un FinePix S5Pro avec un coeff. de 1.5, un FinePix S9600 avec un coeff. de 4.5 etc... Attention à bien utiliser un point comme séparateur décimal pour le coefficient et non pas une virgule !

Il vous suffit d'adapter le nom du modèle correspondant à celui que vous affiche CPG dans les exif de la photo (à insérer entre / et /i de preg_match) et à rechercher le coefficient multiplicateur pour l'apn concerné (à insérer entre * et ,0 de number_format).

Vous pourrez rajouter autant de lignes else if ... que vous avez de modèles différents dans votre galerie.

Quelques exemples sur la galerie Fuji Passion.

Have fun ! ;)

Pascal YAP

Bonjour,

C'est astucieux, et merci pour la contibution  ;)
Toutefois, veuillez notez que votre Coppermine (1.4.18) n'est pas à jour, et de fait vulnérable.
La dernière version actuelle est 1.4.19. Mettez à jour afin de sécuriser votre sympathique Galerie.

flapane

Doesn't work here

Parse error: syntax error, unexpected T_VARIABLE in /home/flapanec/public_html/gallery/include/exif_php.inc.php on line 94

yew (isset ($exif ['FocalLength']) && preg_match (' /FinePix S5Pro/i ', $exif ['Model'])) $exifParsed [$lang_picinfo ['FocalLength']] = $exif ['FocalLength']. " - (". number_format ($exif ['FocalLength'] *1.5, 0). " mm equiv.) "; 

P.S
You need $exif['..'] and not ["..."]
Flapane
www.flapane.com

Gallery
www.gallery.flapane.com

flapane

Well thanks for having silent-fixed it, whoever you are ;)
wth was "yaw" function? :D
Flapane
www.flapane.com

Gallery
www.gallery.flapane.com

Pascal YAP


flapane

I posted here because this 35mm mod was in this section, I doubt the author would have read there.
Flapane
www.flapane.com

Gallery
www.gallery.flapane.com

François Keller

yesn but your'e in the french board and you post in english.
You should translate your posts or post in the two languages: french and english...
Avez vous lu la DOC ? la FAQ ? et cherché sur le forum avant de poster ?
Did you read the DOC ? the FAQ ? and search the board before posting ?
Mon Blog