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

Bibliothèques et frameworks PHP Discussion :

[ezPDF] Fonction addImage : insérer une image créée dynamiquement


Sujet :

Bibliothèques et frameworks PHP

  1. #21
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    <?php 
     
    require_once "Artichow-php4+5/Pie.class.php"; 
     
    $pourcentage = isset($_GET['pourcentage']) ? $_GET['pourcentage'] : $pourcentage;
    $budgetEnCours = isset($_GET['budget_encours']) ? $_GET['budget_encours'] : $budgetEnCours;
    $budgetTotal = isset($_GET['budget_total']) ? $_GET['budget_total'] : $budgetTotal;
     
    $graph = new Graph(300, 280); 
    $graph->setAntiAliasing(TRUE); 
     
    // Titre du graph : 
    $graph->title->set("Secteur / Budget total"); 
    $graph->title->setFont(new Tuffy(14)); 
     
    // Ombrage du graph : 
    $graph->shadow->setSize(3); 
    $graph->shadow->setColor(new Color(0xB4, 0xB4, 0xB4)); 
     
    // Valeurs : 
    $reste = 100 - $pourcentage; 
    $pourcentage = number_format($pourcentage, 2, '.', ' '); 
    $reste = number_format($reste, 2, '.', ' '); 
    $values = array($pourcentage, $reste); 
    $colors = array(new Color(0xA6, 0x05, 0x05), new Color(0x68, 0xCE, 0x1E)); 
     
    $plot = new Pie($values, $colors); 
     
    $plot->setCenter(0.55, 0.42); 
    $plot->setSize(0.65, 0.55); 
    // Mode 3D : 9px sur l'axe z : 
    $plot->set3D(9); 
    $plot->explode(array(1 => 10)); 
    $plot->label->set($values); 
    $plot->label->setFont(new Tuffy(9)); 
     
    $plot->setLabelPosition(9); 
     
    // Légende : 
    $plot->setLegend(array( 
    'Budget en cours : '.$budgetEnCours, 
    'Budget total : '.$budgetTotal 
    )); 
     
    // On souhaite afficher uniquement l'étiquette concernant le budhet en cours : 
    $plot->setLabelNumber(1); 
    // Positionnement des étiquettes : 
    $plot->legend->setPosition(1.15, 1.3); 
    // Typo des étiquettes : 
    $plot->legend->setTextFont(new Tuffy(9)); 
    // Eloignement des étiquettes par rapport au centre : 
    $plot->legend->setSpace(11); 
    // Lissage de l'ombres de la légende : 
    $plot->legend->shadow->smooth(TRUE); 
    // Nombre de lignes de la légende : 
    $plot->legend->setRows(2); 
     
    $graph->add($plot); 
     
    if(isset($_GET['htmlView'])
    	$graph->draw(); 
    else
    	$graph->draw('monimage.jpg'); 
     
    ?>
    pour une vue html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <img src="pie.php?htmlView=yes&amp; 
    budget_encours=<?php echo $budget_encours; ?>&amp; 
    budget_total=<?php echo $budget_total; ?>&amp; 
    pourcentage=<?php echo $pourcentage; ?>" alt="pie" />
    sortie pdf:
    tu défini $pourcentage, $budgetEnCours et $budgetTotal avant le include de pie.php
    et apres l'include, tu fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pdf->addJpegFromFile('monimage.jpg',100,0,100);
    apres génération du pdf tu peux faire un unlink sur ton image.
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  2. #22
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    Re, je viens de rentrer.

    Ta solution me semble très bien, je l'essaye dès demain

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  3. #23
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    re,

    Tout marche à merveille après qq difficultés incompréhensibles rencontrées... J'ai juste changé le jpg en png parce que le format jpg généré ne semblait pas être valide.
    Voilà merci encore

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  4. #24
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    Bon re,

    fausse joie, décidement à force de faire des tests...

    Ca ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pdf->addPngFromFile('monimage.png',100,0,100);
    Par contre quand je lui colle ça au dessus... ça marche plus, au moins l'erreur est localisée, par contre je sais pas ce que c'est...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $pourcentage    = 10.45;
    $budget_encours = 1471121;
    $budget_total   = 14082258;
    require 'pie.php';
    Sinon j'ai rajouté ça dans pie.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(isset($_GET['pourcentage'])) {
    	$pourcentage    = $_GET['pourcentage'];
    	$budget_encours = $_GET['budget_encours'];
    	$budget_total   = $_GET['budget_total'];
    }
    Une idée ?

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  5. #25
    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
    ben en faisant un require, il n'y a pas de GET ! enfin pas ceux que tu as définis ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $pourcentage    = 10.45;
    $budget_encours = 1471121;
    $budget_total   = 14082258;
    require 'pie.php';

  6. #26
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    est ce que tu as modifié ton pie.php pour qu'il ne prenne pas les $_GET mais tes variables plus loin ?

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pourcentage = number_format($pourcentage, 2, '.', ' ');
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $pourcentage = number_format($_GET['pourcentage'], 2, '.', ' ');
    :
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  7. #27
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    oui j'ai bien fait ces modifs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    $reste = 100 - $pourcentage;
    $pourcentage = number_format($pourcentage, 2, '.', ' ');
    $reste       = number_format($reste, 2, '.', ' ');
    ...
    d'ailleurs la version HTML ne marcherait pas si je l'avait pas fait

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  8. #28
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    l'es pas reveillée huntress :p
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  9. #29
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    remet pie.php ici ainsi que le fichier ou tu as mis le require
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  10. #30
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    Mr. N mes param GET servent à la version HTML c'est pour ça que je teste leur existance puisqu'ils n'existent pas dans le cas de la version PDF.

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  11. #31
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    pie.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    <?php
     
    require_once "Artichow-php4+5/Pie.class.php";
     
    if(isset($_GET['pourcentage'])) {
    	$pourcentage    = $_GET['pourcentage'];
    	$budget_encours = $_GET['budget_encours'];
    	$budget_total   = $_GET['budget_total'];
    }
     
    $graph = new Graph(300, 280);
    $graph->setAntiAliasing(TRUE);
     
    $graph->title->set("Secteur / Budget total");
    $graph->title->setFont(new Tuffy(14));
     
    $graph->shadow->setSize(3);
    $graph->shadow->setColor(new Color(0xB4, 0xB4, 0xB4));
     
    $reste = 100 - $pourcentage;
    $pourcentage = number_format($pourcentage, 2, '.', ' ');
    $reste       = number_format($reste, 2, '.', ' ');
    $values = array($pourcentage, $reste);
    $colors = array(
        new Color(0xA6, 0x05, 0x05),
        new Color(0x68, 0xCE, 0x1E)
    );
     
    $plot = new Pie($values, $colors);
     
    $plot->setCenter(0.55, 0.42);
    $plot->setSize(0.65, 0.55);
    $plot->set3D(9);
    $plot->explode(array(1 => 10));
    $plot->label->set($values);
    $plot->label->setFont(new Tuffy(9));
     
    $plot->setLabelPosition(9);
     
    $plot->setLegend(array(
        'Budget en cours : '.$budget_encours,
        'Budget total : '.$budget_total
    ));
     
    $plot->setLabelNumber(1);
    $plot->legend->setPosition(1.15, 1.3);
    $plot->legend->setTextFont(new Tuffy(9));
    $plot->legend->setSpace(11);
    $plot->legend->shadow->smooth(TRUE);
    $plot->legend->setRows(2);
     
    $graph->add($plot);
     
    if(isset($_GET['htmlView']))
    	$graph->draw();
    else
    	$graph->draw('image.png');
     
    ?>
    pdf.php (juste la fin j'ai testé le début ça marche)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    ...
     
    $pourcentage    = 10;
    $budget_encours = '1 471 121';
    $budget_total   = '14 082 258';
     
    require 'pie.php';
     
    $pdf->addPngFromFile('image.png',100,0,100); 
     
    // Création du fichier puis redirection vers ce dernier :
    $handle = fopen('monfichier.pdf', 'w');
    fwrite($handle, $pdf->ezStream());
    fclose($handle);
    header("Location: monfichier.pdf");

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  12. #32
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    et si tu met ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $pourcentage = isset($_GET['pourcentage']) ? $_GET['pourcentage'] : $pourcentage; 
       $budget_encours = isset($_GET['budget_encours']) ? $_GET['budget_encours'] : $budget_encours; 
       $budget_total   = isset($_GET['budget_total']) ? $_GET['budget_total'] : $budget_total;
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(isset($_GET['pourcentage'])) { 
       $pourcentage    = $_GET['pourcentage']; 
       $budget_encours = $_GET['budget_encours']; 
       $budget_total   = $_GET['budget_total']; 
    }
    ?

    EDIT
    ca serais pas le require qui fais planter ?
    t'as essayé un include ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  13. #33
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    J'ai fait la modif avec le machin ternaire ça change rien et changé le require en include rien non plus, je comprends rien. Ca créé l'image, elle est valide et à la suite de ça il veut pas la mettre, par contre si je retire le include/require ça marche...

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  14. #34
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    hum alors c est juste l inclusion dans le pdf qui se fais pas bien ?

    c'est ca ?

    il a peut etre besoin d'un ti sleep avant
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  15. #35
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    L'image générée est correcte y a pas de soucis, et une fois créée je peux l'inclure dans le PDF. Le truc c'est que je peux pas la créer ET l'inclure...

    Donc un tit sleep oui pkoi pas, enfin je sais pas trop. Faudrait créer successvement les images puis les inclure... peut être, donc quand je clique pour avoir mon pdf j'appelle une page qui appelle pie.php et bar.php à la suite de ça les images sont créées et là je fais un header sur pdf.php... je vais essayer comme ça.

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  16. #36
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    ok, tiens moi au courant, t'y es presque la

    j'ai jamais utilisé ezpdf et artichow encore mais je vais certainement en avoir besoin dans pas longtemps, ca m'aura entrainé ce post
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  17. #37
    Membre averti Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Points : 402
    Points
    402
    Par défaut
    Bon ben j'ai fait un tit fichier vite fait qui contient simplement ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
     
    $pourcentage    = 10;
    $budget_encours = '1 471 121';
    $budget_total   = '14 082 258';
     
    include 'pie.php';
     
    header('Location:pdf.php');
     
    ?>
    Ca marche... jusqu'au prochain bug en tout cas.
    Reste plus qu'à mettre les vrais calculs et tout et tout.
    Ben contente de t'avoir montré un aperçu et merci pour ton aide

    Règle n°1 du forum francophone : Parler le français...
    Pas de question technique par MP, le forum est fait pour çà, merci.

  18. #38
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    de rien
    c'est un peu du bricolage mais ca marche
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [XL-2010] ouvrir un userform à partir d'une image créée dynamiquement
    Par eno97 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/10/2012, 11h27
  2. Réponses: 3
    Dernier message: 07/03/2011, 23h01
  3. Centrer un texte sur une image créée dynamiquement
    Par rigolman dans le forum Langage
    Réponses: 7
    Dernier message: 11/10/2005, 17h22
  4. [FLASH MX2004] Insérer une image dynamiquement
    Par Brian3D dans le forum Flash
    Réponses: 5
    Dernier message: 04/04/2005, 10h02
  5. [CR7] Insérer une image dynamiquement
    Par yoloosis dans le forum SAP Crystal Reports
    Réponses: 12
    Dernier message: 28/07/2003, 09h54

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