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

JavaScript Discussion :

Redimensionner image à la taille d'un canvas


Sujet :

JavaScript

  1. #1
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut Redimensionner image à la taille d'un canvas
    Bonjour,

    J'ai un petit soucis de taille d'image dans un canvas, j'arrive a charger l'image, a définir une taille pour mon canvas mais l'image apparait dans sa taille d'origine (supérieure a celle du canvas) et est donc tronquée...

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <canvas id="canvasframe" class="canvas_screen">
    Texte si le navigateur ne supporte pas le HTML Canvas
    </canvas>


    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    .canvas_screen{
    	width:435px;
    	height:350px;
    	margin-top:15px;
    	margin-bottom:15px;
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    window.onload = function(){
        var canvas = document.getElementById("canvasframe");
        var context = canvas.getContext("2d");
        var destX = 0;
        var destY = 0;
        var imageObj = new Image();
     
        imageObj.onload = function(){
            context.drawImage(imageObj, destX, destY);
        };
        imageObj.src = "screen1.jpg";
    };

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 65
    Points : 63
    Points
    63
    Par défaut
    C'est normal dans le drawImage tu ne donnes que la destination. Tu dois également fournir la taille.
    Voici un lien qui te donnes l'exemple.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    context.drawImage(imageObj,destX,destY,destWidth,destHeight);

  3. #3
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    effectivement en lui passant destWidth,destHeight j'arrive a la redimensionner mais les dimensions ne correspondent pas avec celle du canvas, si je lui affecte les dimensions du canvas ou légèrement inférieures (400*300) l'image est encore tronquée, je suis obligé d'avoisiner les 300*150 pour qu'elle s'adapte au canvas 450*350 et je perd trop de qualité a ce moment la.

  4. #4
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    Mon image source fait 450*350, mon canevas cible aussi 450*350 mais pour l'avoir afficher en entier je dois lui passé du 300*150...

  5. #5
    Membre du Club Avatar de Thibault92
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 45
    Points : 52
    Points
    52
    Par défaut
    RÉSOLU !!

    Solution pour ceux que ça intéresse : les canvas ne prennent pas les paramètres width et height en CSS il faut les définir dans la balise <canvas>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redimensionner une image selon taille de la fenêtre
    Par CLeBeR dans le forum Mise en page CSS
    Réponses: 11
    Dernier message: 12/12/2014, 14h31
  2. [API HTML5] Redimensionnement image (Canvas.dataToUrl)
    Par Clad346 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 15/01/2014, 19h26
  3. [MySQL] Redimensionnement image (taille d'origine aléatoire)
    Par lapin7 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 14/08/2010, 18h53
  4. Réponses: 3
    Dernier message: 12/12/2007, 15h44
  5. Réponses: 6
    Dernier message: 03/11/2007, 23h03

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