Bonjour,
Nouvel utilisateur de PWG j'ai reinstallé chez mon FAI (Free) la version 1.6.1. (première version installée par FREE 1.4)
Je rencontre un souci pour l'affichage des metadata.
Après plusieurs synchronisation :
236 informations des images synchronisées avec les méta-données
236 images candidates à la synchronisation avec les méta-données
Méta-données employées : filesize, width, height, date_creation, keywords, date_creation, author, name, comment
Le résultat à l'affichage reste du type :
Auteur non disponible
Créée le non disponible
Ajoutée le Jeudi 10 Août 2006
Dimensions 800*532
Fichier DSC_0043.JPG
Poids 84 Ko
Tags non disponible
Catégories Evènements familiaux / Mariage Joris & Stephanie
Visites 8
Note moyenne pas de note
EXIF Metadata
Make
Model Ver.2.00
ApertureFNumber f/74099368.0
Pouvez vous me donner une piste sur la cause de ce problème.
Merci
Hors ligne
Gestion des méta-données
Le spécialiste c'est Eric ( vimages)...
Hors ligne
SAlut, a tu bien activé l'affichage des metadonnées dans le fichier de configuration ?
Hors ligne
Ton problème est-il résolu? C'était ça?
Hors ligne
Tu devrais essayer le script suivant qui t'affiche toutes les metadata :
tools/metadata.php
Il faut recopier ton fichier dans le répertoire tools et l'appeler sample.jpg pour que cela marche.
Peut être aussi donner un lien vers une de tes images avec ses metadata pour que l'on essaye chez nous.
Hors ligne
Non le problème n'est pas réglé je voulais dire que pour moi la config est OK j'ai bien
$conf['show_exif'] = true dans le fichier de conf config_local.inc.php
Lien sur ma gallerie avec une image en public
http://francispithon.free.fr/phpwebgallery/
Et merci de votre participation
Hors ligne
Ce que je voudrais savoir c'est quel champ tu voudrais avoir?
(faut-il encore que l'appareil photo renseigne correctement le champ...).
8-)
Hors ligne
En tout cas pour info ça merde aussi chez moi avec ton image et ma phpwebgallery local (mais ok dans XnView).
D'autres images passent bien par contre.
Surement un problème de compatibilité entre le format exif de tes images et phpwebgallery.
Quand on regarde avec metadata.php on obtient ça :
Array ( [FileName] => sample.jpg [FileDateTime] => 1155474860 [FileSize] => 80636 [FileType] => 2 [MimeType] => image/jpeg [SectionsFound] => ANY_TAG, IFD0, EXIF [COMPUTED] => Array ( [html] => width="800" height="599" [Height] => 599 [Width] => 800 [IsColor] => 1 [ByteOrderMotorola] => 0 [ApertureFNumber] => f/74099368.0 [FocusDistance] => 74099368.00m [UserComment] => ) [Make] => [Model] => 2 Windows [XResolution] => 16795209/1610612993 [YResolution] => 24576/-66854401 [ResolutionUnit] => 2 [Software] => Exif [DateTime] => NIKON CORPORATION ...
On dirait que toutes les infos sont décalées.
Edit : en fait ça vient pas vraiment de pwg mais plutot du plugin php_exif, on voit aussi que l'image a été édité avec Photoshop CS2, peut être donc une incompatibilité entre ce plugin et Photoshop CS2.
Dernière modification par Toff (2006-08-13 19:08:45)
Hors ligne
Eric te dira ça, il doit connaître de moyen de vérifier sans aucun doute...
8-)
Hors ligne
je suis cours en temps maintenant,
mais en gros :
avec une photo de test, utilise l'outil de PWG (décrit plus haut), pour identifier les iptc que tu veux utiliser, fais des essais (avec xnview par ex) , puis quand tu sauras dans quelles cases entrer les infos, tu auras les n° de ces cases, par la page de PWG. tu entres ces n° de champs dans la config de PWG et le tour est joué... ou presque... :o) si tu utilise les champs déjà mappé dans pwg c'est bon, si tu en veux plus, alors il faut ajouter des colonnes dans la table image, des lignes dans picture.php... etc.. mais là, je suis nase et ne sais plus exactement.. mais il me semble que tout avait été entré dans le wiki du temps de la 1.5 au moins pour les références officielles des champs iptc !!.. puis des topic sur le sujet on été renseignés...
à +
éric.
Hors ligne
Bonjour à tous..
J'utilise sur mon site officiel la ver 1.5 et j'avais déjà effectué les changements pour n'afficher que les infos exif de l'appareil.
J'ai aussi fait les modifs dans la version 1.6 et tout fonctionne normalement.
J'utilise un canon EOS 300 D,
Pour ceux que çà intéresse, j'ai préparé un petit fichier texte pour effectuer les changements...
donc ?
J'ai modifié mon lien de pages persos pour que vous puissiez voir l'affichage sous les images en version 1.6
Dernière modification par robin64 (2006-08-15 12:42:48)
Hors ligne
Bon, je me lance.
Je fais appel aux modos pour vérification et corrections si nécessaire:
adapté à la version 1.6
//Pour des raisons personnelles, je voulais que seules les infos
exifs metadata apparaissent sous la photo, et pas les IPTC.
Pour tout autre appareil, se servir du metadata.php tel que décrit
dans le WIKI pour connaître la dénomination exate des exifs propres
à chaque appareil et marque//
Il suffit de loader dans tools une image jpg avec exif, la renommer
en sample.jpg et taper la ligne dans votre browser:
http://votre site/tools/metadata.php
La page qui apparaît vous décline toutes les infos exifs contenues
dans vos images, choisissez et adaptez en fonction de vos besoins.
--------------fin-----------------
Pour ces modifications, il faudra éditer:
include/config_local.inc.php
inculde/config_default.inc.php
language/fr_FR.iso-8859-1/common.lang.php
template/yoga/picture.tpl
picture.php
------------début des modifs---------
dans include/config_local.inc.php
find ?>
avant mettre:
// exif pour canon 300D
// use_exif_mapping: same behaviour as use_iptc_mapping
$conf['use_exif_mapping'] = array(
'date_creation' => 'DateTimeOriginal'
);
$conf['show_exif_fields'] = array(
'Model',
'DateTimeOriginal',
'COMPUTED;ApertureFNumber',
'ExposureTime',
'ISOSpeedRatings',
'COMPUTED;ShutterSpeedValue',
'FocalLength'
);
// fin de l'ajout.
----------------fin------------------
dans inculde/config_default.inc.php
enlever --ligne 273
$conf['show_exif_fields'] = array(
'Make',
'Model',
'DateTimeOriginal',
'COMPUTED;ApertureFNumber'
);
L'instruction par défault de $conf['use_exif'] est "false", mettre
"true":
// use_exif: Use EXIF data during database synchronization with
files
// metadata
$conf['use_exif'] = true;
-------------------fin--------------------
Dans language/fr_FR.iso-8859-1/common.lang.php
----- ligne 380,
find:
$lang['Visits'] = 'Visites';
after add
// traduction exif, à votre goût
$lang['exif_field_ApertureFNumber'] = 'ouverture';
$lang['exif_field_ExposureTime'] = 'temps exposition';
$lang['exif_field_ISOSpeedRatings'] = 'iso:';
$lang['exif_field_ShutterSpeedValue'] = 'vitesse';
$lang['exif_field_FocalLength'] = 'focale';
$lang['exif_field_DateTimeOriginal'] = 'prise le:';
// fin exif
--------------------fin----------------
dans /template/yoga/picture.tpl
find:
<table class="infoTable" summary="Some info about this picture">
supprimer les lignes:
<tr>
<td class="label">{lang:Author}</td>
<td class="value">{INFO_AUTHOR}</td>
</tr>
<tr>
<td class="label">{lang:Created on}</td>
<td class="value">{INFO_CREATION_DATE}</td>
</tr>
<tr>
<td class="label">{lang:Posted on}</td>
<td class="value">{INFO_POSTED_DATE}</td>
</tr>
<tr>
<td class="label">{lang:Dimensions}</td>
<td class="value">{INFO_DIMENSIONS}</td>
</tr>
<tr>
<td class="label">{lang:File}</td>
<td class="value">{INFO_FILE}</td>
</tr>
<tr>
<td class="label">{lang:Filesize}</td>
<td class="value">{INFO_FILESIZE}</td>
</tr>
<tr>
<td class="label">{lang:Tags}</td>
<td class="value">{INFO_TAGS}</td>
</tr>
<tr>
<td class="label">{lang:Categories}</td>
<td class="value">
<ul>
<!-- BEGIN category -->
<li>{category.LINE}</li>
<!-- END category -->
</ul>
</td>
</tr>
-----------
et
-----------
<tr>
<td class="label">{lang:Average rate}</td>
<td class="value">{info_rate.CONTENT}</td>
</tr>
<!-- END info_rate -->
et ajouter en remplacement:
<tr>
<td class="label">{lang:Created at}</td>
<td class="value">{INFO_CREATION_PLACE}</td>
</tr>
<tr>
<td class="label">{lang:Instructions}</td>
<td class="value">{INFO_INSTRUCTIONS}</td>
</tr>
-------------fin-----------------
J'ai aussi effacé les boutons download, caddie et affichage
metadata:
les lignes:
<a href="{U_METADATA}" title="{L_PICTURE_METADATA}"><img
src="{pwg_root}{themeconf:icon_dir}/metadata.png" class="button"
alt="{L_PICTURE_METADATA}"></a>
<!-- BEGIN download -->
<a href="{download.U_DOWNLOAD}" title="{L_DOWNLOAD}"><img
src="{pwg_root}{themeconf:icon_dir}/save.png" class="button"
alt="{L_DOWNLOAD}"></a>
<!-- END download -->
<!-- BEGIN caddie -->
<a href="{caddie.URL}" title="{lang:add to caddie}"><img
src="{pwg_root}{themeconf:icon_dir}/caddie_add.png" class="button"
alt="{lang:caddie}"/></a>
<!-- END caddie -->
-----------fin-----------------------
pour mes besoins personnels, je ne souhaitais afficher que les exif
sités plus haut donc;
Ouvrir picture.php
find --------------vers ligne 606.
$infos = array();
// author
if (!empty($picture['current']['author']))
J'ai gardé l'affichage du nombre de visites:
// number of visits
$infos['INFO_VISITS'] = $picture['current']['hit'];
j'ai effacé :
// author
if (!empty($picture['current']['author']))
{
$infos['INFO_AUTHOR'] =
// FIXME because of search engine partial rewrite, giving the
author
// name threw GET is not supported anymore. This feature should
come
// back later, with a better design
// '<a href="'.
// PHPWG_ROOT_PATH.'category.php?cat=search'.
// '&search=author:'.$picture['current']['author']
// .'">'.$picture['current']['author'].'</a>';
$picture['current']['author'];
}
else
{
$infos['INFO_AUTHOR'] = l10n('N/A');
}
// creation date
if (!empty($picture['current']['date_creation']))
{
$val = format_date($picture['current']['date_creation']);
$url = make_index_URL(
array(
'chronology_field'=>'created',
'chronology_style'=>'monthly',
'chronology_view'=>'list',
'chronology_date' => explode('-',
$picture['current']['date_creation'])
)
);
$infos['INFO_CREATION_DATE'] = '<a href="'.$url.'"
rel="nofollow">'.$val.'</a>';
}
else
{
$infos['INFO_CREATION_DATE'] = l10n('N/A');
}
// date of availability
$val = format_date($picture['current']['date_available'],
'mysql_datetime');
$url = make_index_URL(
array(
'chronology_field'=>'posted',
'chronology_style'=>'monthly',
'chronology_view'=>'list',
'chronology_date'=>explode('-',
substr($picture['current']['date_available'],0,10))
)
);
$infos['INFO_POSTED_DATE'] = '<a href="'.$url.'"
rel="nofollow">'.$val.'</a>';
// size in pixels
if ($picture['current']['is_picture'])
{
if ($original_width != $picture_size[0]
or $original_height != $picture_size[1])
{
$infos['INFO_DIMENSIONS'] =
'<a href="'.$picture['current']['src'].'" title="'.
l10n('Original dimensions').'">'.
$original_width.'*'.$original_height.'</a>';
}
else
{
$infos['INFO_DIMENSIONS'] =
$original_width.'*'.$original_height;
}
}
else
{
$infos['INFO_DIMENSIONS'] = l10n('N/A');
}
// filesize
if (!empty($picture['current']['filesize']))
{
$infos['INFO_FILESIZE'] =
sprintf(l10n('%d Kb'), $picture['current']['filesize']);
}
else
{
$infos['INFO_FILESIZE'] = l10n('N/A');
}
// file
$infos['INFO_FILE'] = $picture['current']['file'];
// tags
$query = '
SELECT id, name, url_name
FROM '.IMAGE_TAG_TABLE.'
INNER JOIN '.TAGS_TABLE.' ON tag_id = id
WHERE image_id = '.$page['image_id'].'
;';
$result = pwg_query($query);
if (mysql_num_rows($result) > 0)
{
$tags = array();
while ($row = mysql_fetch_array($result))
{
array_push(
$tags,
'<a href="'
.make_index_URL(
array(
'tags' => array(
array(
'id' => $row['id'],
'url_name' => $row['url_name'],
),
)
)
)
.'">'.$row['name'].'</a>'
);
}
$infos['INFO_TAGS'] = implode(', ', $tags);
}
else
{
$infos['INFO_TAGS'] = l10n('N/A');
}
// related categories
foreach ($related_categories as $category)
{
$template->assign_block_vars(
'category',
array(
'LINE' => count($related_categories) > 3
? get_cat_display_name_cache($category['uppercats'])
: get_cat_display_name_from_id($category['category_id'])
)
);
}
//slideshow end
if (isset($_GET['slideshow']))
{
if (!is_numeric($_GET['slideshow']))
{
$_GET['slideshow'] = $conf['slideshow_period'];
}
$template->assign_block_vars(
'stop_slideshow',
array(
'U_SLIDESHOW' => $picture['current']['url'],
)
);
}
ATTENTION: garder en fin de suppression la ligne:
$template->assign_vars($infos);
--------fin de suppression------------------
Pour pouvoir voir les nouvelles infos,
Dans “picture.php???, ajouter après:
$template->assign_vars($infos);
les lignes suivantes:
// place creation
if (!empty($picture['current']['place_creation']))
{
$infos['INFO_CREATION_PLACE'] =
preg_replace(
'/([^,]+)/',
'<a href="'.
add_session_id(
PHPWG_ROOT_PATH.'category.php?cat=search&search=place_creation:$
1'
).
'">$1</a>',
$picture['current']['place_creation']
);
}
else
{
$infos['INFO_CREATION_PLACE'] = l10n('N/A');
}
$template->assign_vars($infos);
et:
// instructions
if (!empty($picture['current']['instructions']))
{
$infos['INFO_INSTRUCTIONS'] =
preg_replace(
'/([^,]+)/',
'<a href="'.
add_session_id(
PHPWG_ROOT_PATH.'category.php?cat=search&search=instructions:$1'
).
'">$1</a>',
$picture['current']['instructions']
);
}
else
{
$infos['INFO_INSTRUCTIONS'] = l10n('N/A');
}
$template->assign_vars($infos);
-------------fin du mod----------------------
------------------enregistrer et remplacer sur le site
Hors ligne