IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

obtenir la résolution d'une image


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut obtenir la résolution d'une image
    Bonjour tout le monde,
    Je fais un script qui met des images dans un fichier pdf, et pour cela j'aimerais bien connaitre la résolution des images que j'intégre.

    Je connais les dimensions de l'image en pixel grâce à la fonction getimagesize, mais je n'ai pas trouvé de moyen permettant de trouver la résolution !

    Si quelqu'un a une idée !! Merci d'avance !

  2. #2
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut
    Citation Envoyé par zoumoizou
    Bonjour tout le monde,
    Je fais un script qui met des images dans un fichier pdf, et pour cela j'aimerais bien connaitre la résolution des images que j'intégre.

    Je connais les dimensions de l'image en pixel grâce à la fonction getimagesize, mais je n'ai pas trouvé de moyen permettant de trouver la résolution !

    Si quelqu'un a une idée !! Merci d'avance !
    il doit exister une fonction mathématique pour calculer ça en fonction du nombre de pixel et de sa taille (HxL)... a toi de chercher...

  3. #3
    Membre averti Avatar de max44410
    Étudiant
    Inscrit en
    Juin 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2003
    Messages : 426
    Points : 301
    Points
    301
    Par défaut
    bon en fait je l'ai fait pour toi ...


    Recherche Google

    2eme site dans google ...

    Exemples :

    Vous souhaitez imprimer une photo de 13 x10 cm.

    Votre imprimeur vous demande de lui fournir des images dont la résolution est de 300 dpi au moins.

    Vous devrez fournir à votre imprimeur une image d'une largeur minimale de (13/2.54)x300=1535 pixels et d'une longueur minimale de (10/2.54)x300=1181 pixels.

    Vous souhaitez afficher une photo de 13 x10 cm sur un écran réglé à 75 dpi.

    Vous devrez disposer d'une image d'une largeur minimale de (13/2.54)x75=384 pixels et d'une longueur minimale de (10/2.54)x75=295 pixels.
    voila tu n'as plus qu'a trouver la formule inverse ...

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Oui d'accord, je sais faire les conversions..., mais dans l'état actuel des choses, je ne connais pas les dimensions réelles des images (en cm).
    Les seules dimensions en pixels ne me permettent pas de connaitre la résolution !!

    Donc y a-t-il moyen d'obtenir directement la résolution de l'image ?
    Manuellement, on l'obtient dans les proporiétés de l'iamge (rubrique résumé). Y aurait-il une fonction ou une méthode pour récupérer ces données par exemple ?

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Utilise getID3 : http://www.getid3.org/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    require_once('getid3/getid3.php');
    $getID3 = new getID3;
    $fileinfo = $getID3->analyze('mon_image.png');
    echo $fileinfo['png']['pHYs']['pixels_per_unit_x'];
     
    ?>
    pixels_per_unit_x = 11811 pour une résolution de 300 pixels/pouces (= 11,811 pixels/mm)
    pixels_per_unit_x = 2835 pour une résolution de 72 pixels/pouces (= 2.8346 pixels/mm)

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    La résolution en soit ne veut pas dire grand-chose : tout dépend du périphérique d'affichage. Pour un écran, c'est 72 dpi et pour une impression de bonne qualité c'est 300 dpi. Pour un PDF, vu que généralement c'est destiné à de l'impression, il faut 200 dpi min.

    Après, ça dépend de ce que contient ton PDF : si c'est uniquement mettre des images sans mise en page de texte, etc., tu peux aborder les choses au moins de 2 façons différentes :
    - Décider que la résolution est de 200 ou 300 dpi (ou demande à l'utilisateur de choisir) et t'en déduis les dimensions (en cm) finales des images
    - Décider de mettre les images au max de largeur des pages (20 cm environ pour un A4) et là, tu te fous de connaître le résolution.

    Si tu dois prendre en compte une certaine mise en page, les dimensions finales des images (en cm) te sont imposées. Donc là également, tu te moques de la résolution. Si la mise en page initiale est une page Web, utilise 72 dpi comme base pour calculer les dimensions réelles de l'image (attention, tenir compte du fait que la balise img permet de forcer les dimensions (en pixels) d'une image).

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci pour getID3, je ne connaissais pas !

    Citation Envoyé par Mr N.
    Utilise getID3 : http://www.getid3.org/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    require_once('getid3/getid3.php');
    $getID3 = new getID3;
    $fileinfo = $getID3->analyze('mon_image.png');
    echo $fileinfo['png']['pHYs']['pixels_per_unit_x'];
     
    ?>
    pixels_per_unit_x = 11811 pour une résolution de 300 pixels/pouces (= 11,811 pixels/mm)
    pixels_per_unit_x = 2835 pour une résolution de 72 pixels/pouces (= 2.8346 pixels/mm)
    J'ai essayé le code avec plusieurs versions de getID3 et des fichiers png pour être dans les mêmes conditions que l'exemple, mais le champ pHYs de $fileinfo['png'] n'existe pas.
    D'ailleurs en examinant le tableau $fileinfo ne contient pas de champ contenant la résolution de l'image.
    Est ce code a déjà été utilisé et si oui dans quelles conditions ? avec quelle version ? J'ai pourtant essayé les versions disponibles sur le site !!
    Merci

  8. #8
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Testé et approuvé sur mon environnement local :
    getid3 : 1.7.7
    php : 4.3.11
    image crée par TheGimp

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 22
    Points : 15
    Points
    15
    Par défaut
    Merci,
    Après des tests avec des png de différentes sources, je constate que toutes les infos ne sont pas disponibles pour toutes les images ; en particulier lorsque la résolution vaut 96ppp, elle n'est pas mentionée.

Discussions similaires

  1. programme pour réduire la résolution d'une image
    Par khokho dans le forum Multimédia
    Réponses: 6
    Dernier message: 16/11/2006, 19h44
  2. Obtenir la taille d'une image chargée
    Par Invité dans le forum Flash
    Réponses: 9
    Dernier message: 15/11/2006, 05h34
  3. [IMAGE] Comment obtenir hauteur largeur d'une image ??
    Par pouillou dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 05/05/2006, 21h38
  4. [ImageMagick] Obtenir les dimensions d'une image externe?
    Par Death83 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 31/01/2006, 09h57
  5. résolution d'une image
    Par nabil dans le forum VB 6 et antérieur
    Réponses: 23
    Dernier message: 29/08/2005, 20h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo